目录
1、外存资源管理
外存空间划分
进程与外存对应关系
2、虚拟页式存储系统
3、 淘汰算法(重点)P217
最佳淘汰算法(OPT)
先进先出(FIFO)
最近最少使用算法(LRU)
最近不用的先淘汰(LNU)
最不经常使用的先淘汰(LFU)
最频繁使用的先淘汰(MFU)
二次机会算法(了解)
时钟算法P220
改进时钟算法
颠簸(thrashing)
工作集模型
页故障率反馈模型
3、虚拟段式存储系统
1、外存资源管理
外存空间划分
概念:存储型设备的存储空间可以看成物理块所构成的有序序列。
块是外存空间分配的基本单位,也是数据传输的基本单位。
进程与外存对应关系
页式:内存一页,外存一块。
段式:每段占外存若干连续块。
段页式:内存一页,外存一块。
2、虚拟页式存储系统
存储逻辑页号和页架号的映射,以及是否访问和修改的修改标识。虚拟允许程序使用比实际物理内存更多的内存空间。它通过将不常使用的数据存储在硬盘上,从而将在物理内存中腾出空间来运行更多的程序。
3、 淘汰算法(重点)P217
用于:页淘汰、段淘汰、块表淘汰
最佳淘汰算法(OPT)
淘汰以后不再需要的或者在将来最长时间以后才用到的。
简单来说置换距离下次使用的最久的页。
先进先出(FIFO)
淘汰最先调入的页。
最近最少使用算法(LRU)
淘汰最后一次访问时间距离当前时间最长的页。
最近不用的先淘汰(LNU)
淘汰最近一段时间未用到的。
实现:每个页面增加两个硬件位
引用位=0,此页未被访问过。
引用位=1,此页曾被访问过。
修改位=0,此页未被修改过。
修改位=1,此页曾被修改过。
淘汰:
引用位 修改位
0 0 :直接淘汰
0 1 :淘汰之前写回外存
1 0 :直接淘汰
1 1 :淘汰之前写回外存
淘汰次序: 00 01 10 11
最不经常使用的先淘汰(LFU)
淘汰使用次数最少的页。
实现:每个页面设置访问计数器,淘汰计数器最小的。
最频繁使用的先淘汰(MFU)
淘汰使用次数最多的。
实现:每个页面设置访问计数器,淘汰计数器最大的。
二次机会算法(了解)
淘汰装入最久且最近未被访问的页面。
使用拉链数据结构
时钟算法P220
有一个指针指向当前位置,每次需要淘汰页面时,从指针所指的页面开始检查,如果引用位为0,则将该页替换,如果引用位为1,则清零,并顺时针到下一位置,直到找到一个引用位为0的页面。
基本时钟算法只用到引用位r,没有用到修改位。
改进时钟算法
改进时钟比基本时钟算法多了一个修改位m,考虑以下四种组合。
引用位r 修改位m
0 0 : 最佳淘汰
0 1 : 淘汰之前写回外存
1 0 : 不淘汰
1 1 : 不淘汰
其余和基本时钟一样,从指针所指页面顺时针开始检查,引用位为0,则该页替换,引用位为1,则清零。
颠簸(thrashing)
定义:页面在内存与外存之间频繁换入换出。
工作集模型
定义:进程在一段时间内所访问页面的集合。
简单来说,就是进程一段时间可以使用的页面总数量。
页故障率反馈模型
页故障率=故障次数F/总访问次数A
3、虚拟段式存储系统
与分段式存储相同,虚拟允许程序使用比实际物理内存更多的内存空间。它通过将不常使用的数据存储在硬盘上,从而将在物理内存中腾出空间来运行更多的程序。