操作系统第五版答案复习题及习题解答.doc

操作系统第五版答案复习题及习题解答.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
虚拟内存 8.1 简单分页与虚拟分页有什么区别? 简单分页:一个程序中的所有的页都必须在主存储器中程序才能正常运行,除非使用覆盖技术。虚拟内存分页:不是程序的每一页都必须在主存储器的帧中来使程序运行,页在需要的时候进行读取。 8.2 解释什么是抖动。 虚拟内存结构的震动现象,在这个过程中处理器大部分的时间都用于交换块,而不是执行指令。 8.3 为什么在使用虚拟内存时,局部性原理是至关重要的? 可以根据局部性原理设计算法来避免抖动。总的来说,局部性原理允许算法预测哪一个当前页在最近的未来是最少可能被使用的,并由此就决定候选的替换出的页。 8.4 哪些元素是页表项中可以找到的元素?简单定义每个元素。 帧号:用来表示主存中的页来按顺序排列的号码。存在位(P):表示这一页是否当前在主存中。修改位(M):表示这一页在放进主存后是否被修改过。 8.5 转移后备缓冲器的目的是什么? 转移后备缓冲器()是一个包含最近经常被使用过的页表项的高速缓冲存储器。它的目的是为了减少从磁盘中恢复一个页表项所需的时间。 8.6 简单定义两种可供选择的页读取策略。 1 / 17 在请求式分页中,只有当访问到某页中的一个单元时才将该页取入主存。在预约式分页中,读取的并不是页错误请求的页。 8.7 驻留集管理和页替换策略有什么区别? 驻留集管理主要关注以下两个问题:(1)给每个活动进程分配多少个页帧。(2)被考虑替换的页集是仅限在引起页错误的进程的驻留集中选择还是在主存中所有的页帧中选择。页替换策略关注的是以下问题:在考虑的页集中,哪一个特殊的页应该被选择替换。 8.8 和页替换算法有什么区别? 时钟算法与算法很接近,除了在时钟算法中,任何一个使用位为一的页被忽略。 8.9 页缓冲实现的是什么? (1)被替换出驻留集的页不久又被访问到时,仍在主存中,减少了一次磁盘读写。(2)被修改的页以簇的方式被写回,而不是一次只写一个,这就大大减少了操作的数目,从而减少了磁盘访问的时间。 8.10 为什么不可能把全局替换策略和固定分配策略组合起来? 固定分配策略要求分配给一个进程的帧的数目是确定的,当一个进程中取入一个新的页时,这个进程的驻留页集中的一页必须被替换出来(保持分配的帧的数目不变),这是一种局部替换策略。 8.11 驻留集和工作集有什么区别? 一个进程的驻留集是指当前在主存中的这个进程的页的个数。一2 / 17 个进程的工作集是指这个进程最近被使用过的页的个数。 8.12 请求式清除和预约式清除有什么区别? 在请求式清除中,只有当一页被选择用于替换时才被写回辅存;在预约式清除中,将这些被修改的多个页在需要用到它们所占据的页帧之前成批的写回辅存。 习题解答 8.1 假设在处理器上执行的进程的也表如下所示。所有数字均为十进制数,每一项都是从0开始记数的,并且所有的地址都是内存字节地址。页尺寸为1024个字节。 虚拟页号 有效位 访问位 修改位 页帧号 4 0 1 1 0 7 1 1 1 1 —2 0 0 0 2 0 1 0 3 —0 0 4 0 0 0 1 5 1 描述产生的虚拟地址通常是如何转化成一个物理主存地址 a.的。 下列虚拟地址对应于哪个物理地址(不用考略页错误)? b.(i)1052 ()2221 ()5499 解答 a:由虚拟地址求得页号和偏移量,用虚拟页号作为索引页表,得到页帧号,联系偏移量得到物理地址 3 / 17 b:(i)1052=1024+28 查表对应的页帧号是7,因此物理地址为7*1024+28=7196 ()2221=2*1024+173 此时出现页错误 ()5499=5*1024+379 对应的页帧号为0 因此物理地址是379 8.2 考虑一个使用32位的地址和1大小的页的分页虚拟内存系统。每个页表项需要32位。需要限制页表的大小为一个页。 a.页表一共需要使用几级? b.每一级页表的大小是多少?提示:一个页表的大小比较小。 c.在第一级使用的页较小与在最底下一级使用的页较小相比,那种策略使用最小个数的页? 解答 a:虚拟内存可以分为232/210= 222页,所以需要22个来区别虚拟内存中的一页,每一个页表可以包含210/4=28项,因此每个页表可以包含22中的8个,所以需要三级索引。 b:第二级页表有28个页表项,第一级页表有26个页表项。 c:如果顶层有26个页表项将会减少使用空间,在这种情况下,中间层页表有26个并且每个都有28个页表项,底层有214个页并且每个都有28个页表项,因此共有1+26+214页=16,449页。如果中间层有26个页表项,那么总的页数有1+28+214页=16

文档评论(0)

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

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

1亿VIP精品文档

相关文档