计算机操作系统 第五章 存储器相关管理.ppt

  1. 1、本文档共203页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机操作系统 第五章 存储器相关管理.ppt

若在快表中未找到相应的页表项,这时,还必须再访问内存中的页表,找到后,把从页表项中读出的物理块号送地址寄存器,同时,将此页表项存入快表中的一个寄存器单元中,要重新修改快表,此时,若快表已满,OS将一个不再需要的页表项将它换出。 BACK 返回本节目录 NEXT 页表始址 页表长度 页表寄存器 页号 页内地址 逻辑地址L 越界中断 b b 输入寄存器 页号 块号 页号 块号 + b d 页表 快表 物理地址 具有快表的地址变换机构 BACK 返回本节目录 NEXT 一般,联想存储器不能很大,通常只能存放16~512个页表项,其数目也不能太多。对中、小型作业而言,有可能已经把全部页表项都放在快表中了,对大型作业,只能将一部分页表放入其中。 配置联想存储器的效率,决定于对它访问时的命中率,如: BACK 返回本节目录 NEXT 检索联想存储器的时间为20ns,访问内存的时间为100ns。若能在联想存储器中检索到CPU给出的页号,则CPU为了存取一个数据,总共需要的时间t1=120ns。若不能在联想存储器中找到该页号,则总共需要时间t2=220ns。若假定访问联想存储器的命中率分别为0%,50%,80%,90%,98%时,其有效访问时间,分别如下表: BACK 返回本节目录 NEXT    一般的访问联想存储器的命中率为80%~90%。所以,由于增设了联想存储器,而使访问数据的时间,比单周期的访问时间要延长40%~22%,但若不引入联想存储器,其时间要延长一倍。 命中率(%) 有效访问时间T=h×t1+(1-h)×t2 (ns) 0 50 80 90 98 T=0×120+1 ×220=220 T=0.50 ×120+0.50 ×220=170 T=0.80 ×120+0.2 ×220=140 T=0.90 ×120+0.1 ×220=130 T=0.98 ×120+0.02 ×220=122 BACK 返回本节目录 NEXT 5.4.3 两级和多级页表 现代的大多数OS,都支持非常大的逻辑地址空间(232~264)。页表要占用相当大的内存空间。 如:32位逻辑地址空间的分页系统中,规定页面大小为4KB,每个页表中的页表项可达1MB,每个页表项占用4个字节,页表就要占用4MB的内存空间,而且还是连续的,是不可能满足的。如何解决: BACK 返回本节目录 NEXT (1)对页表所需的内存空间,采用离散分配方式,来解决难以找到一块连续的大内存空间的问题。 (2)只将当前需要的部分页表项调入内存,其余的页表项仍留在磁盘上,需要时再将它们调入内存。 BACK 返回本节目录 NEXT 一、两级页表Two-Level Page Table 针对难以找到大的连续空间的问题,用将页表进行分页的方法,将它们分别放在不同的物理块中,要为离散分配 的页表再建立一张页表,称为外层页表,在每个页表项中记录了页表页面的物理块号。 BACK 返回本节目录 NEXT 如:对32位逻辑地址空间。页面大小为4KB时,采用一级页表结构,有20位的页号,页表项有1兆个,采用两级页表结构,对页表进行分页,每页中包含1024个页表项,有1024个页表分页,即,外层页表中的外层页内地址p2为10位,外层页号p1也为10位,此时的逻辑地址结构如下: BACK 返回本节目录 NEXT p1 p2 d 外层页号 外层页内地址 页内地址 0 11 12 11 21 22 31 BACK 返回本节目录 NEXT 1011 1078 … 1742 1 4 6 … 1468 … 114 115 … … … … 外部页表 内存空间 第0页页表 第1页页表 第n页页表 0 0 0 0 0 1 1 1 1 1 n 1023 1023 1023 1468 115 114 6 4 两级页表结构 BACK 返回本节目录 NEXT 从上知,页表的每个表项中存放的是进程的某页在内存中的块号,在外层页表的每个页表项中,存放的是某页表分页的首址。可用外层页表和页表两级页表,实现从进程的逻辑地址到物理地址的变换。 BACK 返回本节目录 NEXT 在地址机构中设置一个外层页表寄存器,存放外层页表的始址,用逻辑地址中的外层页号,作为外层页表的索引,找到指定页表分页的首址,再用p2作为指定页表分页的索引,找到指定的页表项。其中含有该页的块号,用该块号和页内地址d即可构成访问内存的物理地址。 如图示: BACK 返回本节目录 N

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档