页面置换算法
最佳置换算法(OPT)
每次都淘汰以后不再使用的或以后最迟再被使用的页面。
是最优的算法,但是实际无法实现,只能作为一个标准来衡量其他置换算法的优劣。
缺页7次,命中率为(15-7)/15=53%
先进先出置换算法(FIFO)
每次总是淘汰最先进入内存的页面,也就是淘汰在内存驻留时间最长的页面。
可能产生Belady异常,缺页次数随着分配的物理块号的增加而增加。因为最早调入的页面往往是使用最频繁的。
缺页12次,命中率为(15-12)/15=20%
最近最久未使用算法(LRU)
当需要置换一页时,选择在最近一段时间里最久没有使用过的页面予以置换。
LRU算法是经常采用的页面置换算法,并被认为是相当好的。
缺页9次,命中率为(15-9)/15=40%
时钟(CLOCK)置换算法
LRU算法的性能接近于OPT,但是实现起来比较困难,且开销大;FIFO算法实现简单,但性能差。
时钟置换算法是LRU和FIFO的折中。
最不常用置换算法(LFU)
选择到当前时间为止访问次数最少的页面淘汰。
为每页设置一个访问计数器,每当页面被访问的时候,计数器+1.
发生缺页中断时,淘汰计数值最小的页面,并将所有计数器清零。