页面置换算法知识回顾和习题

本文回顾了页面置换算法中的LRU算法,详细解析了一个涉及LRU算法的习题,包括缺页次数的计算和地址变换过程。同时,对比分析了FIFO和OPT算法在相同页面走向下的缺页次数,展示了不同算法的页面置换策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

页面置换算法

知识回顾

在这里插入图片描述

练习

习题一

内容:

某页式虚拟存储管理系统中,页面大小为1KB。给某一进程分配的内存块数为3 ,并按下列地址顺序引用内存单元:
3635、3632、1140、3584、2892、3640、0040、2148、1700、2145、3209、0000、1102、1100。
如果上述数字均为十进制数,而内存中尚未装入任何页。

(1) 给出使用LRU算法时的缺页次数。
(2)用流程图的方式解释地址变换的过程。(缺页时只需指出产生缺页中断以请求调页,具体的中断处理流程不需画出)

解答
(1)根据题意,页面的引用次序为3、3、1、3、2、3、0、2、1、2、3、0、1、1,则根据LRU算法依次访问各页,各内存块中的页面置换情况为(加粗页面表示刚调入内存):

访问页面 3 3 1 3 2 3 0 2 1 2 3 0 1 1
内存块1 3 3 3 3 3 3 3 3 1 1 1 0 0 0
内存块2 1 1 1 1 0 0 0 0 3 3 3 3
内存块3 2 2 2 2 2 2 2 2 1 1
是否缺页

故可以看出,LRU算法时的缺页次数为8次。


PS:解题过程中需要进行淘汰页面的选择时,可以通过逆向检查此时在内存中的几个页面号,在逆向扫描过程中最后一个出现的页面就是要淘汰的页面。

例如此时分析到需要页面0,而此时内存已满,需要选一个页面淘汰,进行页面置换:那此时内存中的页面是3、1、2,然后逆向扫描之前访问的页面,三个页面当中1是最早访问的,也是最近最久未使用的页面,故将页面1淘汰,将需要的页面0调入。
在这里插入图片描述
页面置换之后:
在这里插入图片描述
其他分析过程类似。


(2)假设没有快表机构,其地址变换过程为:

Created with Raphaël 2.2.0 开始
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值