🏷️ 知识点:页面置换算法

共 8 道相关题目

模拟卷 年第 16 题 组成原理 选择题

某虚拟存储系统采用页式存储管理,只有 a、b 和 c 三个页框,页面访问的顺序为: 0, 1, 2, 4, 2, 3, 0, 2, 1, 3, 2, 3, 0, 1, 4 若采用 FIFO 替换算法,则命中率为( )。

A. 20% B. 26.7% C. 15% D. 50%

访存过程 页面置换算法

[tag_link]

正确答案:B

本题考查 FIFO 算法。 FIFO 算法指淘汰**先进入**的,易知替换顺序为:

走向012423021323014
c2222000333333
b11113331111114
a000444422222000
命中否

表中除了标注为命中的,其余均未命中,所以命中率为 。 >


2016 年第 26 题 操作系统 选择题

某系统采用改进型 CLOCK 置换算法,页表项中字段 A 为访问位,M 为修改位。A=0 表示页最近没有被访问,A=1 表示页最近被访问过。M=0 表示页没有被修改过,M=1 表示页被修改过。按 (A, M) 所有可能的取值,将页分为四类:(0, 0)、(1, 0)、(0, 1) 和 (1, 1),则该算法淘汰页的次序为( )。

页面置换算法 clock算法

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)

[tag_link]

正确答案:A

改进型 Clock 也称为 “二次机会(Second-Chance)算法的增强版”,依据页的访问位 A 和修改位 M 将页分成四类:

  • (0, 0):最近未被访问,未被修改 —— 优先淘汰
  • (0, 1):最近未被访问,但被修改 —— 淘汰代价较大(需写回磁盘),次优先
  • (1, 0):最近被访问,未被修改 —— 说明该页仍有用,再次保留
  • (1, 1):最近被访问,已被修改 —— 最不愿意淘汰因此,淘汰顺序是按照代价和“是否有用”排序的:👉 (0, 0) < (0, 1) < (1, 0) < (1, 1)✅ [tag_link]正确答案是:A. (0, 0), (0, 1), (1, 0), (1, 1)

2025 年第 26 题 操作系统 选择题

现有一 LRU 算法,采用固定分配局部置换的页面置换策略,已为进程分配 3 个页框,页面访问序列为 {0,1,2,0,5,1,4,3,0,2,3,2,0 },其中 0,1,2 已调入内存。则缺页次数是( )。

页面置换算法 LRU

A. 5 B. 6 C. 7 D. 8

[tag_link]

正确答案:B

LRU 算法中,每当需要访问一个不在当前内存中的页面时,就需要进行置换操作,并选择当前内存中最久未使用的页面进行替换。我们按照给定的页面访问序列进行模拟:初始状态:内存中页面为 {0, 1, 2},访问序列:

访问页面是否命中/缺页之后的内存页面
0命中{1, 2, 0}
1命中{2, 0, 1}
2命中{0, 1, 2}
0命中{1, 2, 0}
5缺页,替换页面 1{2, 0, 5}
1缺页,替换页面 2{0, 5, 1}
4缺页,替换页面 0{5, 1, 4}
3缺页,替换页面 5{1, 4, 3}
0缺页,替换页面 1{4, 3, 0}
2缺页,替换页面 4{3, 0, 2}
3命中{0, 2, 3}
2命中{0, 3, 2}
0命中{3, 2, 0}
总计缺页次数为 6 次。

2015 年第 27 题 操作系统 选择题

系统为某进程分配了 4 个页框,该进程已访问的页号序列为 2, 0, 2, 9, 3, 4, 2, 8, 2, 4, 8, 4, 5。若进程要访问的下一页的页号为 7,依据 LRU 算法,应淘汰页的页号是( )。

页面置换算法 LRU

A. 2 B. 3 C. 4 D. 8

[tag_link] 正确答案:A参考 LRU ,对页号序列从后往前计数,直到数到 4(页框数)个不同的数字为止,这个停止的数字就是要淘汰的页号(最近最久未使用的页),题中为页号 2。


模拟卷 年第 28 题 操作系统 选择题

下列说法中,正确的是( )。 Ⅰ. 先进先出(FIFO)页面置换算法可能会产生 Belady 现象。 Ⅱ. 最近最少使用(LRU)页面置换算法可能会产生 Belady 现象。 Ⅲ. 在进程运行时,如果它的工作集页面都在虚拟存储器内,能够使该进程有效地运行,否则会出现频繁的页面调入/调出现象。 Ⅳ. 在进程运行时,如果它的工作集页面都在主存储器内,能够使该进程有效地运行,否则会出现频繁的页面调入/调出现象。

A. Ⅰ和Ⅲ B. Ⅰ和Ⅳ C. Ⅱ和Ⅲ D. Ⅱ和Ⅳ

页面置换算法 进程和线程

[tag_link]

正确答案:B

说法Ⅰ正确:先进先出(FIFO)页面置换算法在增加内存页面帧数时,可能导致缺页次数反而增加,这种现象称为 Belady 异常,因此 FIFO 确实可能产生 Belady 现象。

说法Ⅱ错误:最近最少使用(LRU)页面置换算法属于栈算法,对于任何页面访问序列,增加页面帧数不会增加缺页次数,因此 LRU 不会产生 Belady 现象。

说法Ⅲ错误:工作集是指进程在最近一段时间内访问的页面集合。 若工作集页面仅位于虚拟存储器(如磁盘交换区),进程访问时需频繁调入主存,会导致缺页中断和页面调入/调出,无法有效运行; 有效运行需要工作集页面位于主存储器中。

说法Ⅳ正确:当进程的工作集页面都在主存储器内时,进程可快速访问所需页面,减少缺页中断,从而有效运行; 否则,会因页面缺失而出现频繁的页面调入/调出现象。

综上,正确说法为Ⅰ和Ⅳ,对应选项 B。


2021 年第 28 题 操作系统 选择题

某请求分页存储系统的页大小为 4KB,按字节编址。系统给进程 P 分配 2 个固定的页框并采用改进型 Clock 置换算法,进程 P 页表的部分内容如下表所示:

2018_Q7_3

若 P 访问虚拟地址为 02A01H 的存储单元,则经地址变换后得到的物理地址是()。

页面置换算法 clock算法

A. 00A01H B. 20A01H C. 60A01H D. 80A01H

[tag_link]

正确答案:C

页面大小为 4KB,低 12 位是页内偏移。虚拟地址为 02A01H,页号为 02H,02H 页对应的页表项中存在位为 0,进程 P 分配的页框固定为 2,且内存中已有两个页面存在。根据 CLOCK 算法,选择将 3 号页换出,将 2 号页放入 60H 页框,经过地址变换后得到的物理地址是 60A01H。


模拟卷 年第 29 题 操作系统 选择题

如下程序在页式虚存系统中执行,程序代码位于虚拟空间 0 页,A 为 128×128 的数组,在虚空间以行为主序存放,每页存放 128 个数组元素。工作集大小为 2 个页框(开始时程序代码已在内存,占 1 个页框),用 LRU 算法,下面两种对 A 初始化的程序引起的页故障数分别为( )。

A. 128×128, 128 B. 128, 128×128 C. 64, 64×64 D. 64×64, 64

操作系统概念 页面置换算法

[tag_link]

正确答案:A

在页式虚存系统中,数组 A 为 128×128,以行为主序存放,每页存放 128 个元素,因此每行对应一个虚拟页,共占用 128 页(假设从第 1 页开始)。 工作集大小为 2 个页框,开始时程序代码(位于第 0 页)已占 1 个页框,故仅剩 1 个页框用于数据页。 采用 LRU 替换��法,数据页框只能容纳一页数据。

对于程序 1(列优先初始化):外层循环遍历列 j,内层循环遍历行 i。 访问顺序为 A[1][1], A[2][1], …, A[128][1], A[1][2], A[2][2], …, A[128][2], …, A[1][128], A[2][128], …, A[128][128]。 每次访问的元素属于不同行(即不同页),由于只有 1 个数据页框,每次访问新页时都会发生页故障并替换当前页。 即使同一页后续会被再次访问,但两次访问之间间隔了其他 127 页的访问,该页已被替换出内存,因此每次访问都会引发页故障。 总访问次数为 128×128,故页故障数为 128×128。

对于程序 2(行优先初始化):外层循环遍历行 i,内层循环遍历列 j。 访问顺序为 A[1][1], A[1][2], …, A[1][128], A[2][1], A[2][2], …, A[2][128], …, A[128][1], A[128][2], …, A[128][128]。 每行元素位于同一页,访问某行时,第一次访问该页发生页故障,随后访问该行其他元素时页已在内存,无故障。 处理下一行时,新页替换旧页,再次发生页故障。 因此,每行仅一次页故障,共 128 行,故页故障数为 128。

综上,程序 1 页故障数为 128×128,程序 2 页故障数为 128,对应选项 A。


2022 年第 30 题 操作系统 选择题

下列选项中,不会影响系统缺页率的是()。

A. 页面置换算法

B. 工作集的大小

C. 进程的数量

D. 页缓冲队列的长度

[tag_link]

正确答案:D

页置换算法会影响缺页率,例如,LRU 算法的缺页率通常要比 FIFO 算法的缺页 率低,排除 A。工作集的大小决定了分配给进程的物理块数,分配给进程的物理块数越多, 缺页率就越低,排除 B。进程的数量越多,对内存资源的竞争越激烈,每个进程被分配的物 理块数越少,缺页率也就越高,排除 C。页缓冲队列是将被淘汰的页面缓存下来,暂时不写 回磁盘,队列长度会影响页面置换的速度,但不会影响缺页率,答案选 D。