常用的四种页面置换算法:
1.最佳置换算法(OPT)
将未来最久不用的置换出去
2.先进先出算法(FIFO)
由名知意
3.最近最久未用置换算法(LRU)
将过去最久不用的置换出去
4.时钟置换算法(CLOCK)
在一个时钟周期,访问位和修改位置为0,当有访问和修改就将对应的位置为1。当要置换的时候,选择访问位和修改位都为0的置换。
例子1:
解答:
OPT:页面7在内存没有,根据最佳置换算法的——未来最久不用的置换原则。在序列7、3、5、0、3、1、6、2、0、1、3中2、1、0、3中2是最久不用的。所以将2置换。
FIFO:先进先出的原则,看装入时间最先装入的先出,也就是3这个被置换。
LRU:最近最久未用置换算法,在最近一次访问时间中,2这个是最久不用的,所以讲置换出去。
CLOCK:将访问位和置换位均为0的置换出去,也就是0这个页面。
例子2:
4 | 3 | 2 | 1 | 4 | 3 | 5 | 4 | 3 | 2 | 1 | 5 | |
4 | 4 | 4 | 4 | 4 | 2 | 2 | ||||||
3 | 3 | 3 | 3 | 3 | 1 | |||||||
2 | 1 | 5 | 5 | 5 |
4 | 3 | 2 | 1 | 4 | 3 | 5 | 4 | 3 | 2 | 1 | 5 | |
4 | 4 | 4 | 1 | 1 | 1 | 5 | 5 | 5 | ||||
3 | 3 | 3 | 4 | 4 | 4 | 2 | 2 | |||||
2 | 2 | 2 | 3 | 3 | 3 | 1 |
4 | 3 | 2 | 1 | 4 | 3 | 5 | 4 | 3 | 2 | 1 | 5 | |
4 | 4 | 4 | 1 | 1 | 1 | 5 | 2 | 2 | 2 | |||
3 | 3 | 3 | 4 | 4 | 4 | 4 | 1 | 1 | ||||
2 | 2 | 2 | 3 | 3 | 3 | 3 | 5 |