OPT(最佳淘汰算法)
从主存中移除以后永远不再使用的页面,如果没有这样的页面,则选择最长时间不访问的页面。保证了获得最低的缺页率。即:被淘汰的页面是以后不再访问或者最长时间不再访问的页面。
当2第一次进入时,发现7在未来的较长的一段时间不会访问到,因此替换7。当3第一次访问的时候,发现1在未来较长的一段时间内不会访问到,则替换1。依次进行。
其中发生置换的次数为6次。
缺页次数:9次
FIFO(先进先出)
最先淘汰最早进入内存的页面(驻留主存时间最久的页面)。类似于队列的思想,每次淘汰的都是队头的元素。
在2第一次进入的时候,发现7为最早使用的页面,则替换7。当3进入的时候,发现0是目前最早进入内存的,因此替换0。
置换次数:12次
缺页次数:15次
LRU(最近最久未访问)
淘汰最近最久没有访问的页面。
在2第一次进入的时候,发现7是最久没有访问的,因此替换7。当3第一次进入的时候,发现1是最久没有访问的,因此替换1。
替换次数:9次
缺页次数:12次
LFU(最久不使用算法)
选择近期最少访问页面作为被替换的页面(淘汰近期使用次数最少的页面),本质是给每个页面访问的时候,增加一个计数器操作,每次选择计数最小的页面换出。
注意
使用这个算法的时候,需要注意的是,存在页面访问次数一样时,需要借用别的方式进行置换。
置换次数:8次
缺页次数:11次