北航操作系统课程-20200319课堂小测-存储管理之虚拟内存管理

2020-03-19-课堂小测-虚拟内存管理之页面置换


北京航空航天大学计算机学院-2020春操作系统课程
以下题目作者为北航计算机学院操作系统课程组,客观题答案由课程组给出,解析及主观题答案均为博主原创,水平有限,如有错误敬请批评指正。


1 从物理地址0x952008处读出的数据是0x234567(按字读取,一个字32位),系统采用大尾端存储数据,若按字节读取,则从该位置读出的数据应是:(填空)

答:0

按字读取一次读出32位数据,0x234567扩展为32位实质是0x00_23_45_67。若按字节读取一次读出8位数据,同样的地址读出的数据就是这32位数据之中的8位,而这8位是头部还是尾部就取决于系统的存储方式,大端存储将先读头部的数据,即0x00(小端存储将先读尾部的数据,即0x67)


2 从降低缺页次数的效果来看,关于页面替换算法说法正确的是:(单选)

A. 第二次机会算法和时钟算法的效果一样

B. LRU一定比FIFO好

C. 时钟算法一定比FIFO好

D. 第二次机会算法一定比LRU差

答:A

在所有页面置换算法中,最优置换OPT是理论上使得缺页次数最少的算法,但由于需要预测页面使用情况而无法实际实现,仅作为理论比较。其他常见算法中,不管是哪种算法,都可以举出特例来使之在某一特定情况下降低缺页次数性能最优,因此没有哪种算法一定优于或差于另一种算法,B、C、D都错误。然而第二次机会算法和时钟算法本质上是同一种算法的不同实现方式,时钟算法只是将第二次机会的队列改为环形,减小了算法开销,但本质仍然是第二次机会思想,从降低缺页次数的效果看其实现效果是完全一样的,A正确。


3 内存引用串为0,1,7,2,3,2,7,1,0,3,采用FIFO的页面替换算法,初始分配4个页框,产生缺页中断的次数为:(填空)

答:6

引用页面:0172327103
页框00000333333
页框1111111100
页框277777777
页框32222222
是否缺页

4 前提条件同第3题,若采用时钟算法,产生的缺页中断数量为:(填空)

答:6

引用页面:0172327103
页框00000333333
页框1111111100
页框277777777
页框32222222
是否缺页

5 前提条件同第3题,若采用LRU算法,产生的缺页中断数量为:(填空)

答:7

引用页面:0172327103
页框00000333300
页框1111111111
页框277777777
页框32222223
是否缺页

6 访问物理内存需要200ns,如采用基于一级页表的纯页式管理,访问一次内存最多约需要________ns:(填空)

答:400

一级页表纯页式管理,最差的情况下需要首先访问页表一次,查到物理地址后再访问物理内存一次,两次物理内存访问400ns。


7 在采用按需调页的系统中,影响内存读写平均延迟的因素有:(多选)

A. 外存读写速度

B. TLB命中率

C. 进程切换开销

D. 换页算法

答:A、B、C、D

内存读写平均延迟,考量的是整个系统运行过程中访存性能,因此有更多的影响因素。首先系统运行中,按需调页时必然有访问内存缺页现象,此时换页算法的优化可以减少换页次数,而访问外存速度的提高可以减少每次换页的延迟,A、D正确。其次使用TLB的系统,一旦TLB命中可以免去访问页表的开销,因此TLB命中率的提高可以显著提升系统访存性能,B正确。最后多个进程之间的切换需要设计大量的换页等操作,也会影响系统访存性能,C正确。


8 抖动产生的原因有:(多选)

A. 并发进程数量过多

B. 物理内存不足

C. 缺页率快速上升

D. I/O设备速度低

答:A、B、C

随着驻留内存的进程数目增加,即进程并发程度的提高,处理器利用率先上升,然后下降。这里处理器利用率下降的原因通常称为虚拟存储器发生“抖动”,也就是:每个进程的驻留集不断减小,当驻留集小于工作集后,缺页率急剧上升,频繁调页使得调页开销增大。其本质原因归纳为并发进程数过多、物理内存不足,而导致缺页率急速上升,A、B、C正确。虚拟存储的抖动和IO设备无关,D错误。


9 在缺页异常处理结束之后,返回到原来程序后,CPU将执行哪条指令:(单选)

A. 执行产生缺页异常的下一条指令

B. 重复执行产生缺页异常的指令

答:B

缺页异常产生时,说明产生缺页异常的那条指令访问了尚未调入内存的内容,其访问要求并没有被满足,因此将所需内容调入内存后需要再次执行该指令,满足该指令对相应内容的访问需求。


10 关于虚拟内存说法正确的是:(多选)

A. 页表需要占用虚拟地址空间

B. 程序在装载时一般只对可执行文件进行内存映射,只有执行时才将代码和数据读入内存

C. 写时复制提高了进程间共享数据的效率

D. 局部性换页策略更有利于消除抖动

答:A、B、C、D

在虚拟存储中,页表(包括多级页表)都需要占用虚拟地址空间,这样可以为不同的进程在其地址空间内安排不同的页表,A正确。虚拟内存采用请求式调页,装载时只是安排内存映射,不将整个程序一次装入内存,只有执行到时才将对应的内容调入内存,这样可以实现小内存执行大程序,B正确。写时复制在内存共享时具有较高的效率,如果两个进程都仅仅是读页面,那么页面没有必要复制,只需要让两个内存同时映射一个物理页即可,遇到需要写页面时才复制页面然后修改,减少了页面复制和写入的次数,C正确。局部置换策略,让一个进程出现抖动时不允许抢占别的进程的页面,让抖动局限在小范围内,一定程度上有利于减小抖动的影响,消除更大范围内的抖动,D正确。

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值