内存的页面置换算法

本文深入探讨了请求分页系统中的页面置换算法,包括最佳置换算法(OPT)、先进先出(FIFO)、最近最久未使用(LRU)、第二次机会算法、时钟算法及其改进版,以及最不常用(LFU)算法。这些算法的目标是降低缺页率,其中LRU和改进的时钟算法在实际系统中得到广泛应用。
摘要由CSDN通过智能技术生成

请求分页系统建立在基本分页系统基础之上,为了支持虚拟存储器功能而增加了请求调页功能和页面置换功能。请求分页是目前最常用的一种实现虚拟存储器的方法。

在请求分页系统中,只要求将当前需要的一部分页面装入内存,以便可以启动作业运行。在作业执行过程中,当所要访问的页面不在内存时,再通过雕爷功能将其调入,同时还可以通过置换功能将暂时不用的页面换出到外存上,以便腾出内存空间。

页面置换算法的主要目标是使页面置换频率最低(也可以说缺页率最低)。

常见的页面置换算法有以下几种:

1、最佳置换算法(Optimal,OPT)

2、先进先出页面置换算法(First In First Out,FIFO)

3、最近最久未使用( Least Recently Used,LRU)置换算法

4、第二次机会算法

5、时钟算法(clock)

6、改进时钟算法

7、最不常用算法(LFU,Least Frequently Used)



1、最佳置换算法(Optimal,OPT)

所选择的被换出的页面将是以后永不使用的,或者是在最长时间内不再被访问,通常可以保证获得最低的缺页率。但是由于人们无法预知一个页面多长时间不再被访问,因此该算法是一种理论上的算法。最佳置换算法可以用来评价其他算法。

举例:一个系统为某进程分配了三个物理块,并有如下页面引用序列:

开始运行时,先将 7, 0, 1 三个页面装入内存。当进程要访问页面 2 时,产生缺页中断,根据最佳置换算法,页面 7 在第18次访问才需要调入,再次被访问的时间最长,因此会将页面 7 换出,后面的过程以此类推,具体过程如下图;

2、先进先出页面置换算法(First In First Out,FIFO)

选择换出的页面是最先进入的页面。该算法实现简单,但会将那些经常被访问的页面也被换出,从而使缺页率升高。

举例:仍使用上面的例子,使用FIFO算法进行页面置换,过程如下&#x

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值