页面置换算法 OPT LRU FIFO CLOCK

页面置换算法 OPT LRU FIFO CLOCK

1、OPT

最佳,不可能实现,通过判断下次访问距当前时间最长的页面,缺页中断最少

2、LRU

最近最少使用。可以通过比对当前内存中的页面和上一次、上上次的页面进行置换。以图为例,内存中为2 3 1,下一次需要访问5,发生缺页,需要替换,观察上一次访问为1,再上一次访问为2,所以替换3。

3、FIFO

先进先出,没什么好说的,字面意思理解。

4、CLOCK

重点说时钟算法,时钟算法带有一个附加位,在首次装入内存或是被访问之后,附加位变为1,即例子中的‘*’号。同样以内存中2 3 1,下一次需要访问5为例。时钟算法采取循环策略,当前指针指在2,发现2不是5,把2的附加位变为0,指针指向3,3也不是5,把3的附加为变为0,以此类推。最后指向附加位变为0的2,替换2以后,新替换的5附加位变为1,指针指向下一位。
如果未发生缺页,指针位置不发生变化,访问的位置附加位置为1。

望大佬们指正