计算机操作系统实验第四讲3.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机操作系统实验第四讲3

相关概念 主要涉及到理论课教材5.1.1和5.1.3、5.4.4等节的内容 虚拟存储器 将虚拟地址组成的地址空间称为虚拟存储器 内外存交换数据的一种方式 当发现需要访问的指令或数据不在内存中时,从外存将其调入内存 如果内存中没有空闲页面,那么调入的页面放在哪里?(内存页面置换算法) 内存页面置换算法 淘汰掉不常用的页面(如何判断) FIFO:先进先出,First In First Out LRU:最近最久未使用,Least Recently Used,记录访问时间 LFU:最不经常使用,Least Frequently Used,计数最近一个周期的访问次数 NUR:最近没有使用,Not Used Recently,记录最近一个周期是否被访问(0/1) OPT:理想型淘汰算法,Optional Replacement Algorithm 任务 模拟几种页面置换算法(FIFO、LRU、LFU、NUR),并通过实验比较几种算法的效果 步骤: 模拟一个指令序列,共有320条指令 50%的指令是顺序执行的 25%的指令存放在当前指令之前的地址 25%的指令存放在当前指令之后的地址 模拟页面 页面大小为1K 物理内存容量为4页~32页 虚拟内存容量为32K 每页内存存放了10条指令 实现LFU和NUR页面置换算法 输出各页面置换算法在一定的物理内存容量下的命中率 命中率=1-页面失效次数/320 模拟内存页面 页面大小为1K,每页内存存放了10条指令 指令地址和内存页面的对应关系 计算出每条地址所在的页号和页内偏移 存放在这里: 计算的方法: 模拟页面结构 页面控制结构 初始化 FIFO LRU LFU NUR 附:vim的用法 vim提供三种模式 命令模式 编辑模式 末行模式 vim try.sh,进入命令模式 命令模式?编辑模式 i:在当前字符的左边插入 a:在当前字符的右边插入 o:在当前行下面插入一个新行 编辑模式?命令模式 Esc 命令模式?末行模式 : 命令模式下 移动光标 G:到文件尾 gg:到文件首 选择文本 v:按字选择 V:按行选择 对选中的文本剪切复制 d:剪切 y:复制 对某一行剪切复制 dd:剪切一行 yy:复制一行 粘贴 p 末行模式下 光标移动到第3行 3 保存 w 退出 q 保存并退出 x 《操作系统实验》 存储管理 云南大学信息学院 张彬彬 2012年11月21日 4095 4094 4093 … 4 3 2 1 0 1023 … 2 1 0 外存 内存 虚拟存储 (进程看到的地址空间) 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 8 9 Page Num=2 Offset=0 Page Num=7 Offset=8 页号 page number 页内偏移 offset Page Num=0 Offset=5 1KB 32KB虚拟内存,物理内存为4KB~32KB 32个虚存页面,4~32个物理内存页面 pn:页号page number,虚存 pfn:页框号page frame number,物理内存 counter:计数页面访问次数 time:记录页面被访问的时间 页面 …… …… 32页,320条指令 物理内存 页框 本程序规定,若一个页面不在物理内存,则其pfn=INVALID 用于维护链表 空闲页框 链表头 使用中的页框 链表头 使用中的页框 链表尾 页面置换其实就是把要换入内存的页面挂入freepf表中的一个页框(当freepf表中没有页框时,从busypf表中释放一个页面) …… …… 32页 物理内存 页框 freepf_head NULL 0 1 2 29 30 31 …… …… freepf_head NULL 0 1 2 29 30 31 i==5, page[i]==2 pl[2].pfn==INVALID,则缺页一次,diseffect++ busypf_head busypf_tail NULL NULL 把该页换入内存 #0 #1 #2 #3 …… …… freepf_head NULL 0 1 2 29 30 31 i==5, page[i]==2 pl[2].pfn==INVALID,则缺页一次,diseffect++ busypf_head busypf_tail NULL NULL 把该页换入内存 pl[2].pfn=0 freepf少一个页框,busypf增加一个页框 NULL #0 #1 #2 #3 …… …… freepf_head NULL 0 1 2 29 30 31 i==13, page[i]==4 pl[4].pfn==1,命中 busypf_head busypf_tail NULL #0 4 #1 #2 9

文档评论(0)

rovend + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档