第5章 存储器管理
一. 多选题(共8题,64分)
1. (多选题, 8分)为什么在页式存储器中实现程序共享时,必须对共享程序给出相同的页号?
- A. 共享页号相同方便地址转换。
- B. 实现程序共享时,由于页式存储结构要求逻辑地址空间是连续的,共享程序若含有转移指令,这些转移指令的转移地址是确定的,所以在程序运行前共享程序的页号必须是确定的。
- C. 例如:假定有一个共享程序EDIT,其中含有转移指令,转移指令中的转移地址必须指出页号和偏移,如果是转向本页,则页号与本页页号相同。现若有两个作业共享这个EDIT程序,假定一个作业定义它的页号为3,另一个作业定义它的页号为5,而在主存中只有一个EDIT程序,它要为两个作业以同样的方式服务,这个EDIT程序一定是可再人的(纯代码的),于是转移指令中的页号是不能按作业的要求随机地改成3或5。所以,对共享程序必须规定一个统一的页号。
- D. 共享程序必须是整个程序共享,所以页号必然相同。
- E. 人为规定,没有为什么。
我的答案: BC
2. (多选题, 8分)叙述段页式虚拟存储管理的优缺点。 正确答案是( ).
- A. 兼有段式虚拟存储和页式虚拟存储两者的优点,即既保持了逻辑上完整性,易于进程间的程序共享和数据共享,有效实现动态链接与装配,动态扩展内存;又解决碎片问题,打破一个段必须在连续主存的限制,避免了移动开销。
- B. 段页式存储管理就是将可变分区管理的空间分配以页框为单位进行分配,既方便又灵活,还克服了碎片问题,但管理软件太复杂。
- C. 主要缺点:需要更多的硬件支持和中断处理,增加了系统的成本和复杂性。
- D. 段页式存储管理的优点就是灵活,既可以按照段式存储管理方式管理,又可以按照页式存储管理方式管理,灵活方便,没有那么多限制。
- E. 段页式存储管理的主要缺点就是太灵活,难以有效管理。
我的答案: AC
3. (多选题, 8分)段式存储管理有什么优缺点?正确答案是( )
- A. 段式存储管理主要缺点:整个程序虽然由若干段构成,但整个进程必须装入连续内存,不能执行大程序。
- B. 段式存储管理的优缺点与页式存储管理的优缺点相同。
- C. 段式存储管理主要优点:严格按程序的逻辑结构分配连续存储空间,方便程序和数据的共享与保护,同时也便于程序及数据段的扩充和动态连接。
- D. 主要缺点:一个段的长度不能大于实际的主存容量,而且为了解决碎片问题,提高主存的利用率,必须采用移动技术,移动主存信息需要较大的系统开销。
- E. 段式存储管理主要优点:整个程序由若干段构成,完整装入连续内存,保持了其完整性和可执行性。
我的答案: CD
4. (多选题, 8分)段式存储管理与页式存储管理的主要区别是什么?正确答案是( )
- A. 分页是信息的逻辑单位,是用户可见的,页的大小是用户程序决定。
- B. 分段管理的优点是分页管理的不足;而分页管理可克服分段管理的不足,可有效解决碎片问题,减少移动开销。
- C. 分段是信息的逻辑单位,是用户可见的,段的大小是用户程序决定。
- D. 而分页是信息的物理单位,分页对用户来说是不可见的,页的大小是事先固定的。
- E. 而分段是信息的物理单位,分段对用户来说是不可见的,段的大小是事先固定的。
我的答案: BCD
5. (多选题, 8分)实现地址重定位的方法有哪两种?请比较两者的差别。正确答案是( )
- A. 2)动态地址重定位:在程序执行过程中,当CPU对存储器访问时,通过硬件地址变换机构将地址转换。优点:执行时程序可浮动,易于共享,为共享实现提供基础。缺点:需硬件支持。
- B. 1)静态地址重定位:用户程序在装入时由装配程序一次完成。简单,但用户程序必须分配一个连续的存储空间,难以共享。
- C. 重定位的方法有直接地址重定位和间接地址重定位。
- D. 重定位的方法有静态地址重定位和动态地址重定位。
- E. 直接地址重定位就是内外存地址一致,无需转换;而间接地址重定位需要通过间接编制完成地址重定位。
我的答案: ABD
6. (多选题, 8分)简述什么是覆盖技术和交换技术?它们之间有什么区别? 正确答案是( )
- A. 对象的区别:交换不要求给出覆盖结构,主要是在进程或作业之间进行,而覆盖则主要是在同一个进程或作业之间进行。
- B. 作用的区别:交换可以在较小的存储空间中运行较多的作业或进程,覆盖可以在较小的存储空间中运行比其容量大的作业或进程。
- C. 交换技术指将系统暂时不用的程序或数据部分或全部从主存中调出,以腾出更大的存储空间,同时将系统要求使用的程序和数据调入主存中,并将控制权转交给它,让其在系统上运行。
- D. 覆盖技术:把程序划分为若干个功能相互独立的程序段,让那些不会同时被CPU执行的程序段共享同一个主存区。通常,这些程序段被保存在外存中,当CPU要求某一程序段执行时,才将该程序段装入主存中覆盖以前的某一程序段。对于用户看来,主存好像扩大了,这便是覆盖技术。
- E. 以上答案都不对。
我的答案: ABCD
7. (多选题, 8分)何谓页式存储器的内零头?它与页面大小有什么关系?
- A. 整个系统在分配之后多出来的页框称作为页式存储器的“碎片”或“内零头”。
- B. 由于用户作业占据的主存空间不可能刚好等于页面的大小,所以,在已分配的页框中,通常都有一部分未被进程占用而浪费的主存空间,这一部分空间称作为页式存储器的“碎片”或“内零头”。
- C. 一般来讲,页面的大小越大,系统所产生的最大内零头的大小越大,反之越小。
- D. 一个页面装不下多出来的那部分称作为页式存储器的“碎片”或“内零头”。
- E. 内零头与页面大小没有关系。
我的答案: BC
8. (多选题, 8分)一道程序被移动或调出时,有限制条件吗?为什么?正确答案是( )
- A. 一道程序被移动或调出时,无限制条件。
- B. 就是搬一个家,又不破坏程序或数据,所以可以无条件随意移动。
- C. 例如,当一道程序正在以DMA方式实现内存与外设进行数据交换时,如果此时移动就会产生数据传输错误,类似这种情况是不能移动的,因此移动是有限制条件的。
- D. 取决于系统,有些系统要求比较死板,不能移动;有些系统设计灵活,允许无条件移动。
- E. 一道程序被移动或调出时,有限制条件。
我的答案: CE
二. 填空题(共3题,36分)
9. (填空题, 6分)
在固定分区管理中,当有1KB、9KB、33KB和121KB四个进程要求进入系统时,试分析主存空间的分配情况(主存初始状态如图5-33所示),并说明主存的浪费是( )KB。
我的答案:416
10. (填空题, 12分)
设某计算机的逻辑地址空间和物理地址空间均为64KB,按字节编址。若某进程最多需要6页数据存储空间,页的大小为4KB。操作系统采用固定分配局部置换策略为此进程分配4个页框,如下表在10:23时已经有4页进入内存,下表的装入时间和访问时间为一天内24小时时间,10:00为10点0分。访问位为0表示未被访问,为1表示已被访问,修改位为0表示未被修改,为1表示已被修改。表中的访问时间均为对应的页最近一次被访问时间。
当该进程执行到时刻10:55时,要访问逻辑地址为5ABCH的数据,请问答下列问题:
(1)该逻辑地址对应的页号是( ).
(2)若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是( ).
(3)若采用最近最少用(LRU)置换算法,该逻辑地址对应的物理地址是( ).
(4)若采用时钟(CLOCK)置换算法,该逻辑地址对应的物理地址是( )。(设搜索下一页的指针沿顺时针方向移动,且当前指向2号页框,示意图如下。)
我的答案:
(1) 5
(2) 7ABCH
(3) 2ABCH
(4) 4ABCH
11. (填空题, 18分)
如果一个作业在执行过程中,按下列的页号依次访问主存:1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6。作业固定占用四个主存页框(块),试问:
(1) 采用FIFO算法时,产生( )次缺页中断,相应的缺页中断率是( )%。
(2) 采用LRU算法时,产生( )次缺页中断,相应的缺页中断率是( )%。
(3) 采用OPT算法时,产生( )次缺页中断,相应的缺页中断率是( )%。
我的答案:
(1) 14
(2) 70%
(3) 10
(4) 50%
(5) 8
(6) 40%