- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * 虚拟存储器中的页面替换策略与Cache中的块替换策略有很多相似之处,但有三点显著不同: ⑴缺页至少要涉及一次磁盘外存存取,以读取所缺的页,因缺页使系统蒙受的损失要比Cache未命中大得多。 ⑵页面替换是由操作系统软件实现的,而Cache的块替换则是由硬件实现的。 ⑶页面替换的选择余地很大,属于一个进程的页面都可替换。 * * 虚拟存储器中的替换策略一般采用LRU算法、LFU算法、FIFO算法,或将两种算法结合起来使用 对于将被替换出去的页面, 假如该页调入主存后没有被修改,就不必进行处理 否则就要把该页重新写入外存,以保证外存中数据的正确性 为此,在页表的每一行应设置一个修改位 * * 【例3-2】 假设主存只有a,b,c三个页框,组成a进c出的FIFO队列,进程访问页面的序列是0,1,2,4,2,3,0,2,1,3,2号。若采用①FIFO算法,②FIFO算法+LRU算法,用列表法分别求两种替换策略情况下的命中率。 【解】 FIFO算法只是依序将页面在队列中推进,先进先出,最先进入队列的页面由c页框推出(被替换掉)。 当FIFO算法结合LRU算法时,命中后不再保持队列不变,而是将这个命中的页面移到a页框,从而延长该页面在队列中的存在时间。 页面访问序列 0 1 2 4 ② 3 0 ② 1 3 ② 命中率 FIFO算法 a 0 1 2 4 4 3 0 2 1 3 3 2/11= 18.2% b 0 1 2 ② 4 3 0 2 1 1 c 0 1 1 2 4 3 0 2 ② 命中 命中 FIFO算法 + LRU算法 a 0 1 2 4 ② 3 0 ② 1 3 ② 3/11= 27.3% b 0 1 ② 4 2 3 0 2 1 3 c 0 1 1 4 ② 3 0 ② 1 命中 命中 命中 * * 3.6.6 Pentium PC机的虚拟地址模式 1.分段不分页模式 2.不分段分页模式 3.分段分页模式 * * Pentium PC机的存储管理部件MMU包括分段部件SU和分页部件PU两部分 可允许SU、PU单独工作或同时工作 因此,MMU支持三种受保护的虚拟模式(简称保护模式) * * 1.分段不分页模式 虚拟地址(逻辑地址)由一个16位的段参照和一个32位的偏移组成 段参照的最低2位与保护机构打交道,高14位用于指定具体的段 一个进程可拥有的最大虚拟地址空间是214+32 = 246 = 64TB 分段部件SU将二维的分段虚拟地址转换成一维的32位线性地址 也就是主存的物理地址 这种模式的优点 无需访问页目录和页表,地址转换速度快 对段提供的一些保护定义,可以一直贯通到段的单个字节级 * * 2.不分段分页模式 这种模式下SU部件不工作,只是分页部件PU工作 程序也不提供段参照,寄存器提供的32位地址被看成是由页目录、页表、页内偏移三个字段组成 由PU完成虚拟地址到物理地址的转换 进程所拥有的最大虚拟地址空间是232 = 4GB 虽然虚拟空间减少了,但是也够用 这种纯分页的虚拟地址模式 能提供保护机制 将虚拟存储器看成是线性分页地址空间 比分段模式具有更大的灵活性 * * 3.分段分页模式 这是一种在分段基础上增加分页存储管理的模式 将SU部件转换后的32位线性地址看成由页目录、页表、页内偏移三个字段组成 再由PU部件完成两级页表的查找,将其转换成32位物理地址 一个进程可拥有的最大虚拟地址空间是64TB 这种模式兼顾了分段、分页两种方式的优点 * * 3.7 存储保护 3.7.1 存储区域保护 3.7.2 访问方式保护 * * 当多个用户共享主存时,会有多个用户程序和系统软件存在于主存中 不仅需要防止由于一个用户程序出错而破坏其他用户的程序和系统软件 还要防止一个用户程序不合法地访问不是分配给它的主存区域 为此,系统应提供存储保护 主要包括两个方面 存储区域保护 访问方式保护 * * 3.7.1 存储区域保护 1. 页表和段表保护方式 2. 键保护方式 3. 环保护方式 * * 对于不是虚拟存储器的主存系统可以采用界限寄存器方式进行存储保护 由系统软件经特权指令设置上、下界,寄存器为每个程序划定存储区域,禁止越界访问 由于用户程序不能改变上、下界的值,所以如果出现错误,也只能破坏该用户自身的程序,不会影响到别的用户程序和系统软件 界限寄存器方式只适用于每个用户占用一个或几个连续的主存区域的情况 在虚拟存储器系统中,由于一个用户程序的各页离散地分布于主存中,不适合采用这种保护方式 通常采用页表保护、段表保护和键保护等方式 * * 1. 页表和段表保护方式 每个程序都有自己的页表和段表,段表和页表本身均有自已的保护功能 无论虚地址如何出错,也只能影响到相应的几个主存页面 假设一个程序有三个虚页号并且已经分给它三个
原创力文档


文档评论(0)