Bootstrap

操作系统学习03 页面置换算法

在这里插入图片描述
页面置换算法的目标:当缺页中断发生,需要调入新的页面而内存已满时,选择内存中的哪个物理页面被置换。
尽可能的减少页面换进换出的次数(缺页中断的次数),把未来不再使用或者短期内较少使用的页面换出。通常只能在局部原理指导下一句过去的统计数据来进行预测。
页面锁定:必须常驻内存的操作系统的关键部分或时间关键的应用进程,实现方法是在页表中添加锁定标志位(lock bit)。
记录一个进程对页访问的一个轨迹:
(虚拟)地址跟踪(页号,位移),生成页面轨迹:
在这里插入图片描述

  1. 最优页面置换算法
    当一个缺页发生中断时,对于保存在内存当中的每一个逻辑页面,计算它的下一次访问之前还需要等待多长时间。从中选择时间最长的那个作为被置换的页面。
    只是理想状况,实际系统中无法实现。因为操作系统不知道每一个页面等待多久才会被再次访问。
    可作为其他算法的性能评价依据(模拟器上运行,记录每一次页面访问情况,第二次即可知道最优置换算法

  2. 先进先出算法FIFO:
    选择在内存中驻留时间最长的页面并淘汰之。
    性能较差,调出的页面可能是经常要访问的页面,并且有belady现象。FIFO算法很少单独使用

;