内管管理的置换算法
来源:互联网 发布:非农数据软件 编辑:程序博客网 时间:2024/04/30 15:56
1.最佳置换算法
定义:最佳置换算法是指,其所选择的被淘汰的页面,将是以后永不使用的,或是在最长(未来)时间内不再被访问的页面。采用最佳置换算法,通常可保证获得最低的缺页率。
但由于人们目前还无法预知一个进程在内存的若干个页面中,哪一个页面是未来最长时间内不再被访问的,因而该算法无法实现。但是可以利用该算法来评价其他算法。
算法过程:
举例说明
假定系统为某进程分配了三个物理块,并考虑有以下的页面号引用串:
7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1
进程运行时,先将7,0,1 三个页面装入内存。以后,当进程要访问页面2 时,将会产生缺页中断。此时OS根据最佳置换算法,将选择页面7 予以淘汰。这是因为页面0 将作为第5 个被访问的页面,页面1 是第14 个被访问的页面,而页面7 则要在第18 次页面访问时才需调入。下次访问页面0时,因它已在内存而不必产生缺页中断。当进程访问页面3时,又将引起页面1 被淘汰;因为,它在现有的1,2,0 三个页面中,将是以后最晚才被访问的。下图所示出了采用最佳置换算法时的置换图。由图可看出,采用最佳置换算法发生了6 次页面置换。
利用最佳页面置换算法时的置换图
2.先进先出页面置换算法定义:优先淘汰最早进入内存的页面,即在内存中驻留时间最久的页面。该算法实现简单,只需把调入内存的页面根据先后次序链接成队列,设置一个指针总指向最早的页面。
但该算法与进程实际运行时的规律不适应,因为在进程中,有的页面经常被访问。
3.最近最久未被使用(LRU)置换算法
选择最久最长时间未访问过的页面予以淘汰,它认为过去一段时间内未访问过的页面,在最久的将来可能也不会被访问。
该算法为每个页面设置一个访问字段,来记录页面自上次被访问以来所经历的时间,淘汰页面时选择现有页面中值最大的予以淘汰。
- 内管管理的置换算法
- 存储管理的页面置换算法
- 存储管理的页面置换算法
- 存储管理的页面置换算法
- 存储管理的页面置换算法
- 存储管理的页面置换算法
- 【操作系统-存储器管理】简单的clock置换算法的实现
- 操作系统中内存管理的页面置换算法
- 简单的置换算法
- objective-c 内管管理3
- 内存管理之页面置换算法
- 分页式存储管理页面置换算法——LRU、FIFO、改进型的CLOCK算法
- 论坛的管理怎么管
- 页面置换算法的实现
- OS 请求调页存储管理方式的FIFO、LRU、OPT、LFU置换算法模拟
- 置换算法
- 置换算法
- 置换 置换群 应用 +置换群对某些算法问题的解释
- java中Date.getTime() BUG-2016-08-10
- QT多线程
- POJ 2778-DNA Sequence(AC自动机+构建邻接矩阵+矩阵快速幂)
- Java8 Lambda表达式教程
- UnsatisfiedLinkError问题
- 内管管理的置换算法
- Android6.0Framework源码解析系列[目录]
- Spring 用注解Annotation注入 abstract 抽象父类的属性
- 一个简单,强大的自定义广告活动弹窗
- lintcode 75 Find Peak Element
- 好用的网络请求库Retrofit2(入门及讲解)
- 线段树--区间更新-区间查询HDU 1698
- linux下的DNS配置(笔记)
- 随机森林简单例子