操作系统常用页面置换算法课程设计

操作系统常用页面置换算法课程设计

ID:47457320

大小:299.01 KB

页数:44页

时间:2020-01-11

操作系统常用页面置换算法课程设计_第页
预览图正在加载中,预计需要20秒,请耐心等待
资源描述:

《操作系统常用页面置换算法课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、摘要在linux中,为了提高内存利用率,提供了内外存进程对换机制,内存空间的分配和回收均以页为单位进行,一个进程只需要将其一部分调入内存便可运行;当操作系统发生缺页中断时,必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。因而引入一种用来选择淘汰哪一页的算法——页面置换算法。页面置换算法是操作系统中虚拟存储管理的一个重要部分。页面置换算法在具有层次结构存储器的计算机中,为用户提供一个比主存储器容量大得多的可随机访问的地。常见的页面置换算法有先来先服务算法(FIFO),最近最久未使用算法(LRU)和最佳适应算法(OPT)。关键字:操作系

2、统;FIFO;LRU;OPT;Linux目录1绪论11.1设计任务11.2设计思想11.3设计特点11.4基础知识21.4.1先进先出置换算法(FIFO)21.4.2最近最久未使用算法(LRU)31.4.3最佳置换算法(OPT)32各模块伪代码算法42.1伪代码概念42.2伪代码算法42.2.1主函数伪代码算法42.2.2延迟时间函数伪代码算法62.2.3FIFO算法的伪代码72.2.4LRU算法的伪代码72.2.5OPT算法的伪代码103函数调用关系图123.1函数声明123.1.1主要算法函数123.1.2辅助函数123.2程序函数调用关系图13

3、4测试结果144.1数据初始化144.2页面调度算法144.2.1先进先出算法154.2.2最近最久未使用LRU154.2.3最佳置换算法OPT175源程序186设计总结30参考文献31致谢321绪论1.1设计任务1、了解UNIX的命令及使用格式,熟悉UNIX/LINUX的常用基本命令,练习并掌握UNIX提供的vi编辑器来编译C程序,学会利用gcc、gdb编译、调试C程序。2、设计一个虚拟存储区和内存工作区,并使用最佳淘汰算法(OPT)、先进先出算法(FIFO)、最近最久未使用算法(LRU)计算访问命中率。(命中率=1-页面失效次数/页地址流长度=1

4、-缺页率)1.2设计思想在进程运行过程中,若期所有要访问的页面不在内存,而需把它们调入内存,但内存已无空闲空间时,为了保证进程正常进行,系统必须从内存中调出一页程序或数据送到磁盘的对换区中。但应将哪个页面调出,须根据一定的算法来确定。通常,把选择换出页面的算法称为页面置换算法。置换算法的好坏将直接影响到系统的性能。不适当的算法可能会导致进程发生“抖动”,即刚被换出的页很快又要被访问,需要将它重新调入,此时又需要再选一页调出;而此刚被调出的页很快又被访问,有需将它调入,如此频繁地更换页面,以致一个进程在运行中把大部分的时间都花费在页面置换工作上。通过模

5、拟实现请求页式存储管理的几种基本页面置换算法,了解虚拟存储技术的特点,掌握虚拟存储请求页式存储管理中几种基本页面置换算法的基本思想和实现过程,并比较它们的效率。改进页面置换算法,可以降低页面失败率,从而有效地提高系统性能。从理论上讲,应将那些以后不再会访问的页面置换出来,或把那些在较长时间内不会再访问的页面调出。目前已有多种置换算法,它们都试图更接近于理论上的目标。1.3设计特点本设计作品主要用C语言编写而成,结构简单,语言易懂,条理清晰。本作品兼容性也非常的高,可以在各种可以编译C语言的编译软件上运行,并能够在cygwin中运行,经多次调试,暂时未

6、发现有何不足。本程序的另一个优点是,程序可以计算大数量数据。如,本程序可以计算的最大物理块个数达到了10000个,用户输入的页面引用串个数也能达到10000个以上。但是,实际生活中系统的物理块个数一般不会达到10000个。因此,我们在提示用户输入页面引用串个数是,只提示最大输入100个。但是代码不足在于使用到了较多的static 全局变量使得整个代码质量不是很好,而且也只是简单的根据算法设计来模拟实现整个过程。我通过先查找该页面是否在页帧中存在,若不存在则需要页面置换,通过刷新每个页帧的time值来得到每次的最小值来进行页面的置换,最小值即代表着最近

7、最少使用的页面。经过测试,这个系统已经达到了题目中的全部要求。这个程序有很多优点有一个是界面简明,简洁明了的程序菜单;一个是智能化的模块设计,减少了许多人工操作,如功能模块操作结束后,均会返回主菜单进行下一模板的运行,并提示是否再进行类似的操作,这样给用户带来了操作的方便,大大提高了学生选课的效率还有就是提示语言既简洁又明确,层次分明等等;当然也有缺点如程序仍然存在不合理的地方,例如程序某些部分输入错误不能立刻返回改正;信息表达方式不丰富,比较单一,缺少图片、音乐等元化表达方式。FIFO算法总是选择在内存驻留时间最长的一页将其淘汰。这种算法基于CPU

8、按线性顺序访问地址空间的这个假设上,许多时候,CPU不是按吸纳型顺序访问地址空间的。所以,那些在内存中停留时

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

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

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