操作系统第五章复习题
一、选择题
1、虚拟存储器功能的管理方法包括( )。 A 可变分区存储管理B 基本分页存储管理 C 请求分段存储管理D 段页式存储管理 2、虚拟存储器的最大容量( )。 A 由作业的地址空间决定B 是任意的
C 由计算机的地址结构决定的D 为内、外容量之和
3、下面的页面置换算法中会产生所谓Belady 异常现象的是( )。 A 最佳页面置换算法(OPT) B 先进先出页面置换算法(FIFO) C 最近最久未使用页面置换算法(LRU) D 最少使用页面置换算法(LFU) 4、实现虚拟存储器的目的是( )。
A 实现存储保护B 实现程序浮动C 扩充辅存容量D 扩充内存容量 5、把作业地址空间使用的逻辑地址变成内存物理地址为( )。 A 加载B 重定位C 物理化D 逻辑化
6、虚拟存储管理系统的基础是程序的( )理论。 A 局部性B 全局性C 动态性D 虚拟性
7、从下列关于非虚拟存储器的论叙中,选出一条正确的论叙。( )
A 要求作业在运行前,必须全部装入内存,且在运行过程中也必须一直驻留内存。 B 要求作业在运行前,不必全部装入内存,且在运行过程中不必一直驻留内存。 C 要求作业在运行前,不必全部装入内存,但在运行过程中必须一直驻留内存。 D 要求作业在运行前,必须全部装入内存,且在运行过程中不必一直驻留内存。 二、判断题
1、虚拟存储器时物理上扩充内存容量。(F )
2、为提高请求分页系统中内存的利用率,允许用户使用不同大小的页面。(F ) 3、在请求分页式系统中,以页为单位管理用户的虚空间,以段为单位管理内存空间。(F )
1
三、填空题
1、在页式存储器管理系统中,常用的页面淘汰算法有:(最佳 ),选择淘汰不再使用或最远的将来才使用的页;( FIFO),选择淘汰在内存驻留时间最长的页; 2、在请求分页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起(越界中断 );否则,若所需的页不在内存中,则会引起( 缺页中断)。 四、简答题
1、虚拟存储器有哪些特征?其中最本质的特征是什么? 2、实现虚拟存储器需要哪些硬件支持? 3、说明请求分段系统中的缺页中断处理过程。 五、综合题
1、(2009考研题)请求分页管理系统中,假设某进程的页表内容如下表所示。
页号 0 1 2 页框号 101H -- 254H 有效位(存在位) 1 0 1 页面大小为4KB,一次内存的访问时间是100ns,一次快表(TLB)的访问时间是10ns,处理一次缺页的平均时间为108ns(已含更新TLB和页表的时间),进程的驻留集大小固定为2,采用最近最少使用置换算法(LRU)和局部淘汰策略。假设 ①TLB初始为空;
②地址转换时先访问TLB,若TLB未命中,再访问页表(忽略访问页表之后的TLB更新时间);
③有效位为0表示页面不在内存,产生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列2362H、1565H、25A5H,请问:
(1) 依次访问上述三个虚地址,各需多少时间?给出计算过程。 (2) 基于上述访问序列,虚地址1565H的物理地址是多少?请说明理由。 2、(2010考研题)设某计算机的逻辑地址空间和物理地址空间均为64KB.按字节编址。若某进程最多需要6页(Page)数据存储空间,页的大小为1KB.操作系统采用固定分配局部置换策略为此进程分配4个页框(Page Fame).
2
页号 0 1 2 3 页根号 7 4 2 9 装入时刻 130 230 200 160 访问位 1 1 1 1 当该进程执行到时刻260时,要访问逻辑地址为17CAH的数据,请问答下列问题: (1)该逻辑地址对应的页号是多少?
(2)若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。
(3)若采用时钟(CLOCK)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。(设搜索下一页的指针沿顺时针方向移动,且当前指向2号页框,(示意图如下)
9号页3号页2号页2号页7号页
0号页1号页4号页3、已知某分页系统,主存容量为64K,页面大小为1K,对一个4 页大的作业,其0,1,2,3 页分别被装入到主存的2,4,6,7 块中。
1) 十进制的逻辑地址1023、2500、3500、4500 转换成物理地址。 2) 以十进制的逻辑地址1023 为例,画出地址变换过程图。 解答: ①逻辑地址1023(十进制)的二进制表示为 00 11 1111 1111(3FF)
由此可知逻辑地址1023 的页号0,查页表知该页放在第2 物理块中,其物理地 址的二进制表示为010 11 1111 1111 所以逻辑地址1023 对应的物理地址为0BFFH 其余省略
3
也可用十进制表示,计算简单
(2) 以十进制的逻辑地址1023 为例,画出地址变换过程图。
4、对应如下所示的段表,请将逻辑地址(0,137),( 1,4000),( 2,3600),( 5,230)转换成物理地址。
段表
4
解答:
注意段长是K,( 1,4000)段内位移越界,(5,230):段号越界
3、在一个请求分页系统中,假如一个作业的页面走向为4,3,2,1,4,3,5,4,3,2,1,5,目前它还没有任何页装入内存,当分配给作业的物理块数目M 分别为3 和4 时,请分别计算采用OPT、LRU、FIFO 页面淘汰算法时访问过程中所发生的缺页次数和缺页率。 解答:
OPT: M=3 时的缺页次数为7 缺页率为7/12 M=4 时的缺页次数为6 缺页率为6/12 LRU M=3 时的缺页次数为10 缺页率为10/12 M=4 时的缺页次数为8 缺页率为8/12 FIFO M=3 时的缺页次数为9 缺页率为9/12 M=4 时的缺页次数为10 缺页率为10/12
5、(2012考研题)某请求分页系统的页面置换策略如下:
从 0 时刻开始扫描,每隔 5 个时间单位扫描一轮驻留集(扫描时间忽略不计)且在本轮没有被访问过的页 框将被系统回收,并放入到空闲页框链尾,其中内容在下一次分配之前不清空。当放发生缺页时,如果该页曾 被使用过且还在空闲页链表中,则重新放回进程的驻留集中;否则,从空闲页框链表头部取出一个页框。 忽略其它进程的影响和系统开销。初始时进程驻留集为空。目前系统空闲页的页框号依次为 32、15、21、41。 进程 P 依次访问的<虚拟页号,访问时刻>为<1,1>、<3,2>、<0,4>、<0,6>、<1,11>、<0,13>、<2,14>。请回答下列问 题。
(1)当虚拟页为<0,4>时,对应的页框号是什么?
(2)当虚拟页为<1,11>时,对应的页框号是什么?说明理由。 (3)当虚拟页为<2,14>时,对应的页框号是什么?说明理由。 (4)这种方法是否适合于时间局部性好的程序?说明理由
参考答案:(1)页框号为 21。因为起始驻留集为空,而 0 页对应的页框为空闲链表中的第三个空闲页框(21),其对应的 页框号为 21。
(2)页框号为 32。理由:因 11>10 故发生第三轮扫描,页号为 1 的页框在第二轮已处于空闲页框链表中,此 刻该页又被重新访问,因此应被重新放回驻留集中,其页框号为 32。 (3)页框号为 41。理由:因为第 2 页从来没有被访问过,它不在驻留集中,因此从空闲页框链表中取出链表 头的页框 41,页框号为 41。
(4)合适。理由:如果程序的时间局部性越好,从空闲页框链表中重新取回的机会越大,该策略的优势越明 显。
6、某计算机主存按字节编址,逻辑地址和物理地址都是32位,页表项大小为4字节。请回答下列问题。
(1)若使用一级页表的分页存储管理方式,逻辑地址结构为:
5
页号(20位) 页内偏移量(12位) 则页的大小是多少字节?页表最大占用多少字节? (2)若使用二级页表的分页存储管理方式,逻辑地址结构为:
页目录号(10位) 页表索引(10位) 页内偏移量(12位) 设逻辑地址为LA,请分别给出其对应的页目录号和页表索引的表达式。
(3)采用(1)中的分页存储管理方式,一个代码段起始逻辑地址为:0000 8000H,其长度为8KB,被装载到从物理地址0090 0000H开始的连续主存空间中。页表从主存0020 0000H开始的物理地址处连续存放,如下图所示(地址大小自下向上递增)。请计算出该代码段对应的两个页表项的物理地址、这两个页表项中的页框号以及代码页面2的起始物理地址。
页表物理地址3物理地址2物理地址10020 0000H
代码页面2代码页面1页框号2页框号10090 0000H
6