一、相关概念
1.驻留集:请求分页存存储管理中给进程分配的物理块的集合。
2.工作集:某段时间间隔内,进程实际访问页面的集合。
计算:
3.两者关系:驻留集的大小是根据工作集的大小分配的,驻留集的大小不能小于工作集的大小,否则进程运行过程中将频繁缺页(抖动现象)。
二、策略
1.页面分配策略
固定分配-OS为每个进程分配一组固定数目的物理块,在进程运行期间不再改变,即驻留集大小不变。
可变分配-先为每个进程分配一定数目的物理块,在进程运行期间对其进行适当增加或减少,驻留集可变。
2.页面置换策略
局部置换-缺页时只能选进程自己的物理块进行置换
全局置换-缺页时可以将操作系统的空闲物理块分配给缺页进程,也可以将其他进程的物理块置换到外存再分配给缺页进程。
固定分配全局置换的策略是不存在的。
3.具体组合
固定分配局部置换-OS为每个进程分配一组固定数目的物理块,在进程运行期间不再改变+缺页时只能选进程自己的物理块进行置换;
进程分配物理块数很难确定。
可变分配全部置换-先为每个进程分配一定数目的物理块+缺页时可选OS的空闲物理块,也可选其他进程的物理块置换(OS会保持一个空闲物理块队列,当进程缺页时,从空闲物理块中取出分配给该进程;无空闲物理块,选择一个未锁定的页面换出外存。当空闲物理块用完时,才选择调出未锁定的页面)
会导致其它进程的物理块减少,缺页率增加。
可变分配局部置换-先为每个进程分配一定数目的物理块+缺页时只能选进程自己的物理块进行置换。缺页率增加,多分配物理块;缺页率减少,少分配物理块。
实现动态增加和减少进程的物理块
三、调入时机
1.预调页策略:由局部性原理,在程序进程运行前一次调入若干个相邻的页面,但预测率低。
2.请求调页策略:进程在运行期间发现缺页时才将所缺页面调入内存,但一次只能调入一页,每次调页均要进行磁盘I/O操作,I/O开销大。
四、何处调入
1.对换区空间充足时,页面调入、调出都是在对换区进行
2.对换区空间不够时,将不会被修改的数据存入文件区,换出时无需写回磁盘;
修改过的数据换出时要写回磁盘对换区,下次直接从对换区中调入。
3.UUNIX方式-运行前将进程所有有关数据全部放在文件区,使用过的页面需要换出,要写回对换区,下次需要时从对换区调入。
四、抖动(颠簸)现象
1.概念
刚换出的页面马上又要换入内存/刚换出的页面马上又要换出内存的频繁页面调度行为
2.产生原因
进程频繁访问的页面数目高于可用的物理块数,即分配给进程的物理块不够。
3.结果
分配给进程程的物理块不够时,系统会花费大量时间用于进程页面的换入换出,使得执行进程时间减少,系统性能下降。
分配给进程程的物理块过多时,导致物理块空闲,系统资源利用率降低。
为尽量提高系统性能,需要确定工作集的合理大小。