- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
全局页面替换策略
全局页面替换策略
南通大学杏林学院
计算机科学与技术专业
设计组长:
左志文 1113023063
组员:
崔佳琪1113023062 黄龙吟1113023060 许张洋1113023017 卢家琦1113023058
瞿灿1113023059
问题描述
在多道程序的正常运行过程中,属于不同进程的页面被分散存放在主存页框中,当发生缺页中断时,如果已无空闲页框,系统要选择一个驻留页面进行淘汰。在此讨论的是所有驻留页面都可作为置换对象的情况,而不管页面所属进程的全局页面置换算法。
实验例题:
一个页式存储管理系统使用FIFO、OPT和LRU页面替换算法,如果一个作业的页面走向为:
2,3,2,1,5,2,4,5,3,2,5,2;
4,3,2,1,4,3,5,4,3,2,1,5;
1,2,3,4,1,2,5,1,2,3,4,5;
当分配给此作业的物理块数分别为3和4时,试描述所发生的缺页中断过程。
需求分析
本实验主要研究的页面置换算法有三个:
OPT(OPTimal replacement,OPT)最佳页面替换算法。
FIFO(First In First Out)先进先出页面替换算法。
LRU(Least Recently Used,LRU)最近最少使用页面替换算法。
通过研究这些页面替换算法可以使我们对操作系统的认识更加深入,为以后自己开发操作系统或者进行其他系统分析提供良好的基础,OPT、FIFO、LRU三种算法设计时间不同,性能也不同通过实验我们可以得出比较详细的了解并且可以尝试创造设计出更加优秀的算法。
概要设计
OPT算法:
当要调入一页而必须淘汰旧页时,应该淘汰以后不再访问的页,或距现在最长时间后要访问的页面。
这就需要在替换页面的时候对当前内存区域的各个页面进行一轮判定,找到当前内存区域当中最长时间内不再使用(或今后不再使用)的页面,判定时要扫描下面即将使用的内存列表。
FIFO算法:
基于程序总是按线性顺序来访问物理空间这一假设,总是淘汰最先调入主存的页面,即淘汰在主存中驻留时间最长的页面。
实现这一算法,我们需要按照时间顺序对页面进行排列,需要置换的时候从一端删除页面,而从一端添加进页面。
LRU算法:
淘汰的页面总是在最近一端时间内最久没有访问的那一页,它是基于程序局部性原理来考虑的,认为那些刚被使用过的页面可能还要立即被使用,而那些在长时间内未被使用的页面可能不会立即使用。
为了能准确淘汰最近最少使用的页面,必须维护一个特殊的队列页面淘汰队列。每次使用内存区域对队列进行动态调整,确保最不常使用的页面位于队尾,替换的时候自动替换出队尾出指向的页面。
详细设计
页面替换的实现上使用C++面向对象的设计思路。首先设计出内存管理类,内部维护一个双端链表(deque),和一个定义内存区域最大的值的无符号整型变量unsigned int maxsize。定义两个私有函数bool isPageExist(int page)和bool DeletePage(int page)分别用于判定指定序号的页面是否存在于内存当中,以及在内存中删除指定页面的内存。
内存管理类原型如下
class MemManager {
private:
dequeint mem;
unsigned int maxsize;
bool isPageExist(int page);
bool DeletePage(int page);
public:
MemManager(int maxsize);
//~MemManager();
void operator()(int maxsize);
void clear();
void FIFO(int* pages,int len);
void OPT(int* pages,int len);
void LRU(int* pages,int len);
void info();
};
三个共有函数FIFO(),OPT(),LRU()分别对应三种算法;
clear()函数用于清空管理器对象的内存区;
info()函数用于显示当前内存区域情况。
各个函数的具体实现代码:
MemManager::MemManager(int maxsize)
{
this-maxsize = maxsize;
}
void MemManager::operator()(int maxsize)
{
this-maxsize = maxsize;
//产生新任务,清空内存区域列表
clear();
}
void MemManager::clear()
{
//清空双端队列,即内存区域
mem.clear();
}
bool MemManager::isPageExist(int page)
您可能关注的文档
- 免疫病原生物学考试题目及答案一.doc
- 免疫组织和器官练习题.doc
- 免疫细胞化学常用试剂.doc
- 免疫调节(第1课时).doc
- 免疫调节--说课.doc
- 免疫调节基础(教师版).doc
- 免疫考试重点.doc
- 免疫调节复习学案1.doc
- 免疫调节学案25.doc
- 免疫调节指引.doc
- 护理学相关知识复习测试卷共三套.doc
- 护理学相关知识复习试题含答案(3套).doc
- 2025届高考语文复习:补写句子 课件.pptx
- 气压带和风带对气候的影响(第1课时)(教学设计).docx
- 气压带和风带对气候影响教学设计2024-2025学年高中地理人教版(2019)选择性必修1.docx
- 《故都的秋》课件 2024-2025学年统编版高中语文必修上册.pptx
- 《屈原列传》课件 2024-2025学年统编版高中语文选择性必修中册.pptx
- 《巫溪家乡文化》课件-2024-2025学年高一语文同步备课课件(统编版必修上册).pptx
- 《苏武传》课件 2023-2024学年统编版高中语文选择性必修中册.pptx
- 郑州中控ZKTime8.3 WEB考勤软件培训文档.pptx
最近下载
- 第20课 走进大自然(课件)-2024冀美版美术二年级上册.pptx
- 05系列建筑标准设计05N6图集.pptx
- Module 3(复习课件)五年级英语上册(外研版三起).pptx
- 中亚(48张ppt).ppt
- EPS7100工业以太网交换机安装说明书V1.01.pdf VIP
- 《中国工程企业海外合规经营与风险防范》微解.ppt
- 2024年国家开放大学《形势与政策》大作业:中华民族现代文明有哪些鲜明特质?建设中华民族现代文明的路径是什么?[附4份答案]供参考.docx
- 洒水车租赁协议书(标准版).docx VIP
- 3119005234赖宇轩《路由与交换技术》实训课实验报告2022 (2).docx VIP
- 基于决策树的可疑交易账户预警模型.pdf VIP
文档评论(0)