1. 局部分配策略与全局分配策略
局部页面置换算法:为每个进程分配固定的内存片段,每个进程页框数固定。
全局页面置换算法:在可运行进程之间动态分配页框,分配给每个进程的页框数是随时间变化的。
一般情况下,全局页面置换算法比较好,当工作集的大小随进程运行时间变化明显时更加明显。如此时使用局部页面置换算法,即使有大量空闲页面在,也可能会颠簸,工作集变小时,每个进程都会有大量的页框被闲置,造成内存浪费。使用全局算法时,系统必须随时确定应该给进程分配的页面多少,一种实现是用LRU的老化位监测工作集大小,然后这并没有什么卵用,因为,老化算法是根据时间滴答来确定页面集大小,间隔太长,工作集的大小往往几十微秒就波动很大了。
法1,定期确定进程数目,为其分配等额的页面,然而并不公平,有的进程需要多,有的需要少。
法2,根据进程的大小按比例为其分配页面。动态更新比例。管理动态内存的一种方法就是PPF,即缺页中断率算法,计算每秒的缺页中段数,当某个进程的缺页中断率高时,为他分配,低时剥夺页面。使得每个进程都保持在可接受范围内。
既适用于全局也适用于局部的算法有:LRU,FIFO
只适用于局部的是时钟集算法和工作集算法。
2. 负载控制
与分配算法无关,只要所有进程需要的页框数总和超过了内存容量,就可能发生颠簸。
原因是此时一些进程需要更