操作系统实验报告6-页面置换算法模拟

操作系统实验报告6-页面置换算法模拟

ID:38654341

大小:250.00 KB

页数:24页

时间:2019-06-17

操作系统实验报告6-页面置换算法模拟_第1页
操作系统实验报告6-页面置换算法模拟_第2页
操作系统实验报告6-页面置换算法模拟_第3页
操作系统实验报告6-页面置换算法模拟_第4页
操作系统实验报告6-页面置换算法模拟_第5页
资源描述:

《操作系统实验报告6-页面置换算法模拟》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、.实验报告(2013/2014学年第1学期)课程名称操作系统原理实验名称实验6:页面置换算法模拟实验时间2013年12月10日指导单位软件工程系指导教师杨健学生姓名班级学号学院(系)软件工程系专业计算机软件与服务外包..实验名称实验1:Linux操作、使用、编程与进程创建指导教师杨健实验类型实验实验学时2实验时间2013.12.10一、实验目的1.通过模拟实现几种基本页面置换的算法,了解虚拟存储技术的特点。2.掌握虚拟存储请求页式存储管理中几种基本页面置换算法的基本思想,并至少用三种算法来模拟实现。3.通过对几种置换算法页面的比较,来

2、对比他们的优缺点,并通过比较更换频率来对比它们的效率。二、实验环境(实验设备)Windows2000VisualStudio三、实验内容设计一个虚拟存储区和内存工作区,并使用下述算法来模拟实现页面的置换:1.先进先出的算法(FIFO)2.最近最久未使用算法(LRU)3.最佳置换算法(OPT)实验分析在进程运行过程中,若其所访问的页面不存在内存而需要把它们调入内存,但内存已无空闲时,为了保证该进程能够正常运行,系统必须从内存中调出一页程序或数据送磁盘的对换区中。但应调出哪个页面,需根据一定的算法来确定,算法的好坏,直接影响到系统的性能。

3、一个好的页面置换算法,应该有较低的页面更换频率。..假设分给一作业的物理块数为3,页面数为20个。页面号为(20个):7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,11.先进先出(FIFO)置换算法的思路该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。该算法实现简单,只需把一个进程已调入内存的页面,按照先后次序连接成一个队列,并设置一个替换指针,使它总指向最老的页面。2.最近久未使用(LRU)置换算法的思路最近久未使用置换算法的替换规则,是根据页面调入内存后的使用情况来进行决策

4、的。该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问以来所经历的时间,当需淘汰一个页面的时候选择现有页面中其时间值最大的进行淘汰。3.最佳(OPT)置换算法的思路其所选择的被淘汰的页面,奖是以后不使用的,或者是在未来时间内不再被访问的页面,采用最佳算法,通常可保证获得最低的缺页率。4.FIFO页面置换算法..当需要访问一个新的页面时,首先调用findExist(i)函数来查看物理块中是否就有这个页面,若要查看的页面物理块中就有,则调用display函数直接显示,不需要替换页面;如果要查看的页面物理块中没有,就需要寻找空闲物

5、理块放入,若存在有空闲物理块,则将页面放入;若没有空闲物理块,则调用findReplace函数替换页面。并将物理块中所有页面timer++。5.LRU页面置换算法  当需要访问一个新的页面,首先调用findExist(i)函数查看物理块中是否就有这个页面。6.OPT页面置换算法当需要访问一个新的页面,首先调用findExist(i)函数来查看物理块中是否有这个页面。7.寻找置换页面函数findReplace比较三个物理块中的时间标记timer,找到时间最久的。代码#include#include#

6、include#defineBLOCK_MAX_SIZE20//最?大洙?物?理え?块é大洙?小?enum{FIFO=1,LRU,OPT};structnode_page{intaddress;//指?令?地?址·intpage_num;//页?面?号?intnext_order;//下?一?次?访?问ê的?次?序ò}*page;..//物?理え?块é定¨义?typedefstructBlockNode{intpage_index;//page数簓组哩?的?下?标括?structBlockNode*next;}Bloc

7、kNode;struct{intlength;//当獭?前°物?理え?块é长¤度èintmiss_flag;//缺ā?页?标括?志?,?若?为a1,?则ò缺ā?页?intmiss_count;//缺ā?页?次?数簓BlockNode*front;BlockNode*rear;}Block;//本?程ì序ò中D全?局?变?量?名?均ù由?两?个?单蹋?词洙?组哩?成é,?且ò开a头?字?母?大洙?写′intBlockSize=5;//物?理え?块é大洙?小?intPageCount=200;//页?面?总哩?数簓intPageSiz

8、e=1024;//页?面?大洙?小?intAddrRange=8*1024;//访?问ê地?址·范?围§intget_num(intdown,intup)//得?到?一?个?down~up之?间?的?整?数簓{intnu

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

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

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