[操作系统]内存页面置换算法

用页面置换算法决定应该换出哪个页面

五种页面置换算法:
1)最佳置换算法(OPT)
2)先进先出算法(FIFO)
3)最近最少使用算法(LRU)
4)时钟置换算法(CLOCK)
5)改进型的时钟置换算法

最佳置换算法(OPT):
每次选择淘汰的页面将是以后永不使用,最长时间内不再被访问的页面,无法实现

先进先出算法(FIFO)
把调入内存的页面根据调入的先后顺序排成一个队列,换出时选择队头页面,最大长度取决于
系统为进程分配了多少个内存块,性能比较差

最近最少使用算法(LRU)
每次淘汰的页面是最近未使用的页面,用访问字段记录该页面上次被访问以来所经历的时间,
当需要淘汰一个页面的时候,选择页面中时间值最大的,需要专门的硬件支持,开销大

时钟置换算法(CLOCK)
内存中的页面通过链接指针,链接成一个循环队列,增加一个字段访问位字段,1表示访问过,0表示未访问过
循环遍历,如果是0就选择该页换出,如果是1就修改为0,最多会经过两轮扫描

改进型的时钟置换算法
增加一个是否修改过条件,如果为1就修改过,如果为0就没修改过

页面分配策略

驻留级:请求分页存储管理中给进程分配的物理块集合,一般小于进程的总大小

页面分配/置换策略:一般是可变分配全局置换,可变分配局部置换

调入页面的时机:根据局部性原理,一次调入若干相邻页面,主要用于进程的首次调入

从何处调页:对换区(连续分配方式)和文件区(离散分配)

抖动现象:极短时间换入换出,分配给进程的物理块不够

工作集:根据窗口尺寸算出进程实时访问的页面集合

 

posted @ 2021-01-03 16:44  陶士涵  阅读(18)  评论(0编辑  收藏