一战成硕
- 3.2 虚拟内存管理
- 3.2.1 虚拟内存的基本概念
- 3.2.2 请求分页管理方式
- 3.2.3 页框分配
- 3.2.4 页面置换算法
- 3.2.5 抖动和工作集
3.2 虚拟内存管理
3.2.1 虚拟内存的基本概念
3.2.2 请求分页管理方式
- 页表机制
- 缺页中断机制
- 地址变换机构
3.2.3 页框分配
- 驻留集大小
- 内存分配策略
- 物理调入算法
- 调入页面时机
- 从何处调入页面
- 如何调入页面
3.2.4 页面置换算法
-
最佳置换算法(OPT)
每次选择淘汰的页面将是以后永不使用,或者在最长时间内不再被访问的页面,这样可以保证最低的缺页率。
但由于操作系统无法判断序列,所以这只是一个理想算法。
-
先进先出页面置换算法(FIFO)
每次淘汰的页面是最早进入内存的页面。这种懒惰的算法性能很差
-
最近最久未使用置换算法(LRU)
每次淘汰的页面是最近最久未使用的页面,该算法性能好,但实现起来开销大。
-
时钟置换算法(CLOCK)或最近未用算法(NRU)
为每一个页面设置一个访问位,将内存中的页面都通过链接指针成一个循环队列,当某页被访问时,其访问位置为1,当需要淘汰一个页面时,只需检查页的访问位。如果是0就换出,如果是1就置为0,暂不换出,继续检查下一个页面,若一轮扫描中所有页面均为1,则依次置为0后再进行第二轮扫描。
改进型的时钟置换算法
只有淘汰页面被修改过时,才需要写回外存,在其他条件都相同时,应该优先淘汰没有修改过的页面。增加修改位。