自考操作系统-----页置换算法

简介: 自考操作系统-----页置换算法

页置换算法有三种方式。一种是最佳置换算法,还有先进先出置换算法,以及最久未使用LRU置换算法。


最佳置换算法


概念:最佳置换算法西安则以后永远不会被访问的也或者再未来最长时间内不再被访问的作为换出页。比如:7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1需要进入到3个页框中


首先先7 0 1先分别进去到页框中,2号页需要进入页框发现没有位置所以需要把某一个页置换出来,那么根据最佳置换算法,需要“在未来时间最长时间不使用的页”置换出来,可以看到7 0 1三个页中,7是在倒数第三个才会使用,所以把7置换出来,以此类推。


66024e3e5d0aaadb5f117dcf33d96c3f_28f99d29fe964f75a4df1cc9c906eea8.png


得到上图的置换。


FIFO页置换算法


意思很明确也就是那个页先进来,哪个页就先出去,类似于栈的使用,还是用上个例子,7 0 1先进来,那么最先出去也就是7,然后2进来,在书写计算的时候可以用栈的凡是7最下面,0在中间,1在最上面,7置换出去,相当于是最下面空了,然后0和1掉下来,新进入的2在最上面


f944935e90e60d9221a860ab96894b75_96f52c85763f49d8be288aff005f1cfd.png


LRU置换算法


LRU置换算法是选择最近未使用的页换出(最近最久未使用的页在最近的将来被访问的可能性页比较小)


最近是看将要置换的页最近的,置换的是离得最远的,


还是上面的例子,先进来7 0 1 ,当到2时没有位置了。需要置换,离2最近的是1和0,最久的是7,所以把7置换出去。


相关文章
|
16小时前
|
算法 Linux 数据处理
《操作系统》—— 处理机调度算法
《操作系统》—— 处理机调度算法
|
16小时前
|
算法
操作系统LRU算法(最近最少使用算法)
操作系统LRU算法(最近最少使用算法)
22 0
|
16小时前
|
存储 算法
【操作系统】虚拟存储管理-页面置换算法
【操作系统】虚拟存储管理-页面置换算法
57 0
|
16小时前
|
算法 安全
【操作系统】死锁处理-银行家算法
【操作系统】死锁处理-银行家算法
53 0
|
16小时前
|
算法 调度
详解操作系统四大常用的作业调度算法(FCFS丨SJF丨HRRN丨RR)
详解操作系统四大常用的作业调度算法(FCFS丨SJF丨HRRN丨RR)
1015 0
|
16小时前
|
存储 算法 安全
操作系统:银行家算法
操作系统:银行家算法
42 0
|
16小时前
|
算法
操作系统OPT算法(最佳页面替换算法)
操作系统OPT算法(最佳页面替换算法)
41 0
|
16小时前
|
算法 调度 C语言
操作系统进程调度算法(c语言模拟实现)
操作系统进程调度算法(c语言模拟实现)
182 0
|
7月前
|
缓存 算法 关系型数据库
面试官:你知道MySQL和Linux操作系统是如何改进LRU算法的吗?
上周群里看到有位小伙伴面试时,被问到这两个问题: 咋一看,以为是在问操作系统的问题,其实这两个题目都是在问如何改进 LRU 算法。 因为传统的 LRU 算法存在这两个问题: 「预读失效」导致缓存命中率下降(对应第一个问题) 「缓存污染」导致缓存命中率下降(对应第二个问题) Redis 的缓存淘汰算法则是通过实现 LFU 算法来避免「缓存污染」而导致缓存命中率下降的问题(Redis 没有预读机制)。 MySQL 和 Linux 操作系统是通过改进 LRU 算法来避免「预读失效和缓存污染」而导致缓存命中率下降的问题。 这次,就重点讲讲 MySQL 和 Linux 操作系统是如何改进 L
|
9月前
|
算法
计算机操作系统学习笔记(9)——页面置换算法
计算机操作系统学习笔记(9)——页面置换算法
102 0

热门文章

最新文章