操作系统学习(8)

30 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第28天,点击查看活动详情

1. 页面置换算法

最佳置换(OPT)算法选择的被淘汰页面,将是以后永不使用的,或许是在最长时间内不再被访问(往后看哪个最晚被用到)的页面;采用最佳置换算法可保证获得最低的缺页率。但是由于无法预知哪一个页面是未来最长时间内不再被访问的,因而该算法是无法实现的;

先进先出(FIFO)算法淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。分配的块多缺页率会下降。

最近最久未使用(LRU)算法根据页面调入内存后的使用情况进行决策,选择最近最久未使用的页面予以淘汰(向前看哪个离他最远);该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问一来所经历的时间T,当需要淘汰一个页面时,选择现有页面中T值最大的,即最近最久未使用的页面予以淘汰。

最少使用(LFU)算法:看后边找已有的页哪个数离他最远,就替换谁。若没有其中一个数则看做其为无穷远,直接将其替换,若都没有则替换第一个数

缺页次数=有数字的列

置换次数=缺页次数-物理块数

缺页率=缺页次数/总数量

例题:在一个请求分页系统中,采用FIFO页面置换算法时,假如一个作业的页面走向为4、3、2、1、4、3、5、4、3、2、1、5,当分配给该作业的物理块数M分别为3和4时, 试计算在访问过程中所发生的缺页次数和缺页率,并比较所得结果。

图片.png

说明了并不是分配物理块越多越好