页面置换算法模拟 实验报告材料.doc

页面置换算法模拟 实验报告材料.doc

ID:56526117

大小:129.30 KB

页数:14页

时间:2020-06-27

页面置换算法模拟 实验报告材料.doc_第1页
页面置换算法模拟 实验报告材料.doc_第2页
页面置换算法模拟 实验报告材料.doc_第3页
页面置换算法模拟 实验报告材料.doc_第4页
页面置换算法模拟 实验报告材料.doc_第5页
资源描述:

《页面置换算法模拟 实验报告材料.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、中北大学软件学院实验报告专业软件工程课程名称计算机操作系统学号姓名辅导教师静成绩实验日期2015.11.20实验时间1实验名称:实验四页面置换算法模拟2、实验目的(1)了解存分页管理策略(2)掌握调页策略(3)掌握一般常用的调度算法(4)学会各种存储分配算法的实现方法。(5)了解页面大小和存实际容量对命中率的影响。3、实验要求编程实现页面置换算法,最少实现两种算法,比较算法的优劣,并将调试结果显示在计算机屏幕上,并检测机算和笔算的一致性。(1)采用页式分配存储方案,通过分别计算不同算法的命中率来比较算法的优劣,同时也考虑页面大小

2、及存实际容量对命中率的影响;(2)实现OPT算法(最优置换算法) 、LRU算法(LeastRecently) 、FIFO算法(FirstINFirstOut)的模拟;(3)使用某种编程语言模拟页面置换算法。4、实验算法描述(1)FIFO(先进先出)开始页面走向存入数组p[]中,内存块用page[]表示初始化为0当前p[]中第i个元素是否已在内存中i++YPage[]是否有空NN把p[i]的内容直接装入最上面一个空内存块,i++把page[]中最先装入的页面置换出去.i++Y输出当前内存块状态结束图4-1FIFO算法流程图开始(2

3、)LRU(最近最久未使用)页面走向存入数组p[]中,内存块用page[]表示初始化为0当前p[]中第i个元素是否已在内存i++YNPage[]是否有空YN把p[i]的内容直接装入最上面一个空内存块,i++把page[]中最近最久未使用的页面置换出去.i++输出当前内存块状态结束图4-2LRU算法流程图(3)OPT(最佳置换算法)开始页面走向存入数组p[]中,内存块用page[]表示初始化为0当前p[]中第i个元素是否已在内存i++YPage[]是否有空NYN把p[i]的内容直接装入最上面一个空内存块,i++把page[]中以后一

4、段时间都不使用或是使用时间离现在最远的换出.i++输出当前内存块状态结束图4-3OPT流程图6、实验代码#includeusingnamespacestd;#defineBsize3#definePsize20structpageInfor{intcontent;//页面号inttimer;//被访问标记};classPRA{public:PRA(void);intfindSpace(void);//查找是否有空闲存intfindExist(intcurpage);//查找存中是否有该页面intfindRep

5、lace(void);//查找应予置换的页面voiddisplay(void);//显示voidFIFO(void);//FIFO算法voidLRU(void);//LRU算法voidOptimal(void);//OPTIMAL算法voidBlockClear(void);//BLOCK恢复pageInfor*block;//物理块pageInfor*page;//页面号串private:};PRA::PRA(void){intQString[20]={7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0

6、,1};block=newpageInfor[Bsize];for(inti=0;i

7、闲存,返回BLOCK中位置return-1;}intPRA::findExist(intcurpage){for(inti=0;i=block[pos].timer)pos=i;//找到应予置换页

8、面,返回BLOCK中位置returnpos;}voidPRA::display(void){for(inti=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。