内存管理 --- 页面置换算法

最优置换:(参照未来OPT)

可以将将来很长一段时间不会访问的逻辑页面,进行置换

举例说明:

首先物理空间只有4个,然后遍历了ABCD 页,其中,要访问5 e 了但是没有,即发生缺页中断,然后要置换,首先能看到abc需要访问的时间都很短相对与d来说,所以就把d置换就好了

先进先出算法(FIFO)

先进来的时间最长,在链首,其次时间最长,应该先被淘汰,然后新进来的在链尾;但是有可能把访问时间最多的页面删除掉,性能变差

比如这个,连续完美错过(连续中断)

最久最近未被使用(LRU)

很长时间没访问,不和驻留时间最长一个概念

例子

长时间没被访问到过的,被置换掉

lru算法需要记录的每个页的对应使的时间的先后顺序,开销比较大。两种可能的

用栈来实现就是底部用来存放访问时间等待最长的元素,顶部存放刚访问的元素

时钟页面置换算法(CLOCK)

利用指针来扫描环形链表中的页表的访问位,如果是1,那么表示最近被访问过,操作系统会将不定时的将方位位清零。

(页号,访问位,帧号)

访问位为0,那么如果发生缺页中断,就会将将要访问的那个页表替换到这个物理页中,并且访问位为1,指针指向下一个位置

如果访问位为1那么就变成0,指针切换到下一个位置

最不常用算法(LFU)

策略最不长使用的

遍历链表时间上非常慢

LRU是根据访问的时间,LFU是根据访问的次数

Belady 现象 LRU FIFO CLOCK 算法的比较

先进先出算法,三个物理页的时候,12次访问9缺页中断

增加物理页为4 并未提升命中效率,反而12次10 中断,这就是Belady现象

LRU是随着物理页的增加,缺页次数减少的过程

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值