2016年真题
【2016年题26】 某系统采用改进型 CLOCK 置换算法,页表项中字段 A 为访问位,M 为修改位。 表示页最近没有被访问, 表示页最近被访问过。 表示页没有被修改过, 表示页被修改过。按 (A, M) 所有可能的取值,将页分为四类:(0, 0), (1, 0), (0, 1) 和 (1, 1),则该算法淘汰页的次序为____。
A. (0, 0), (0, 1), (1, 0), (1, 1)
B. (0, 0), (1, 0), (0, 1), (1, 1)
【2016年题26】 某系统采用改进型 CLOCK 置换算法,页表项中字段 A 为访问位,M 为修改位。 表示页最近没有被访问, 表示页最近被访问过。 表示页没有被修改过, 表示页被修改过。按 (A, M) 所有可能的取值,将页分为四类:(0, 0), (1, 0), (0, 1) 和 (1, 1),则该算法淘汰页的次序为____。
A. (0, 0), (0, 1), (1, 0), (1, 1)
B. (0, 0), (1, 0), (0, 1), (1, 1)
C. (0, 0), (0, 1), (1, 1), (1, 0)
D. (0, 0), (1, 1), (0, 1), (1, 0)
解析:
改进型的 CLOCK 置换算法执行的步骤如下:
1)从指针的当前位置开始,扫描帧缓冲区。在这次扫描过程中,对使用位不做任何修改。选择遇到的第一个帧(,)用于替换。
2)如果第 1)步失败,则重新扫描,查找(,)的帧。选择遇到的第一个这样的帧用于替换。在这个扫描过程中,对每个跳过的帧,把它的使用位设置成 0。
3)如果第 2)步失败,指针将回到它的最初位置,并且集合中所有帧的使用位均为 0。重复第 1 步,并且如果有必要,重复第 2)步。这样将可以找到供替换的帧。
从而,该算法淘汰页的次序为 (0, 0), (0, 1), (1, 0), (1, 1),即 A 正确。
【2016年题28】 某进程的段表内容如下所示。
当访问段号为 2、段内地址为 400 的逻辑地址时,进行地址转换的结果是____。
A. 段缺失异常 B. 得到内存地址 4400 C. 越权异常 D. 越界异常
解析:
分段系统的逻辑地址 A 到物理地址 E 之间的地址变换过程如下。
① 从逻辑地址 A 中取出前几位为段号 ,后几位为段内偏移量 ,注意段式存储管理的题目中,逻辑地址一般以二进制给出,而在页式存储管理中,逻辑地址一般以十进制给出,各位读者要具体问题具体分析。
② 比较段号 和段表长度 ,若 ,则产生越界异常,否则继续执行。
③ 段表中段号 对应的段表项地址 = 段表起始地址 + 段号 段表项长度,取出该段表项的前几位得到段长 。若段内偏移量 ,则产生越界异常,否则继续执行。从这句话我们可以看出,段表项实际上只有两部分,前几位是段长,后几位是起始地址。
④ 取出段表项中该段的起始地址 ,计算 ,用得到的物理地址 去访问内存。
题目中段号为 2 的段长为 300,小于段内地址为 400,故发生越界异常,D 正确。
【2016年题29】 某进程访问页面的序列如下所示。
若工作集的窗口大小为 6,则在 时刻的工作集为____。
A. B. C. D.
解析:
在任一时刻 ,都存在一个集合,它包含所有最近 次(该题窗口大小为 6)内存访问所访问过的页面。这个集合 就是工作集。该题中最近 6 次访问的页面分别为 6, 0, 3, 2, 3, 2,再去除重复的页面,形成的工作集为 。
【2017年题25】 某计算机按字节编址,其动态分区内存管理采用最佳适应算法,每次分配和回收内存后都对空闲分区链重新排序。当前空闲分区信息如下表所示。
回收起始地址为 60K、大小为 140KB 的分区后,系统中空闲分区的数量、空闲分区链第一个分区的起始地址和大小分别是______。
A. 3、20K、380KB B. 3、500K、80KB C. 4、20K、180KB D. 4、500K、80KB
解析:
回收起始地址为 60K、大小为 140KB 的分区时,它与表中第一个分区和第四个分区合并,成为起始地址为 20K、大小为 380KB 的分区,剩余 3 个空闲分区。在回收内存后,算法会对空闲分区链按分区大小由小到大进行排序,表中的第二个分区排第一。所以选择 B。
更新于2026-11-03