操作系统知识要点
页面置换算法
当发生缺页中断时,操作系统需要在内存中选择一个页面将其换出内存,再将需要的页面调用内存。那么,应该选择哪个页面呢?这是 由页面转换算法来决定的。
最优页面置换算法
假如我们可以预测出内存中的一个页面,过了很久很久才会被访问,比其它页面都久,那么,我们就应该将这个页面换出内存。这就是 最优页面转换算法,但是,由于我们无法做出这种预测,或者说即使可以通过仿真预测出来,得到的性能也和其它算法差不多,那么, 我们就没有必要使用这种算法。
最近未使用算法(Not Recently Used)
将页面分成四类
- 第0类:没有被访问,没有被修改
- 第1类:没有被访问,已被修改
- 第2类:已被访问,没有被修改
- 第3类:已被访问,已被修改
优先选择低类别的进行置换。
先进先出算法(First In First Out)
操作系统维护一个页面链表,最新进入的在表尾,替换时将表头页面移出。
第二次机会算法
对FIFO的改进,如果表头的页面没有被访问过,则移出,如果被访问过,就将他放在表尾,并将访问位清0。