校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > 专业课 > 页面转换算法
题目

讲讲你知道的操作系统最常采用的页面置换算法

解答

先进先出(FIFO)算法:

思路:置换最先调入内存的页面,即置换在内存中驻留时间最久的页面。

实现:按照进入内存的先后次序排列成队列,从队尾进入,从队首删除。

特点:实现简单;性能较差,调出的页面可能是经常访问的

最近最少使用(LRU)算法:

思路:置换最近一段时间以来最长时间未访问过的页面。根据程序局部性原理,刚被访问的页面,可能马上又要被访问;而较长时间内没有被访问的页面,可能最近不会被访问。

实现:缺页时,计算内存中每个逻辑页面的上一次访问时间,选择上一次使用到当前时间最长的页面

特点:可能达到最优的效果,维护这样的访问链表开销比较大

当前最常采用的就是LRU算法。

最不常用算法(Least Frequently Used, LFU)

思路:缺页时,置换访问次数最少的页面

实现:每个页面设置一个访问计数,访问页面时,访问计数加1,缺页时,置换计数最小的页面

特点:算法开销大,开始时频繁使用,但以后不使用的页面很难置换

C 0条回复 评论

帖子还没人回复快来抢沙发