操作系统课程设计报告课件分析.doc
文本预览下载声明
上海电力学院
计算机操作系统原理
课程设计报告
题目名称: 编写程序模拟虚拟存储器管理
姓 名: 杜志豪 .学 号:
班 级: 2012053班 .
同组姓名: 孙嘉轶
课程设计时间: 2014.6.30——2014.7.4
评语:
成绩:
目录
设计内容及要求……………………………………………… 4
1. 1 设计题目……………………………………………………4
1.2 使用算法分析:…………………………………………… 4
1.2.1 FIFO算法(先进先出淘汰算法)……………… 4
1.2.2 LRU算法(最久未使用淘汰算法)……………… 5
1. 2.3 OPT算法(最佳淘汰算法)……………………… 5
1.3 分工情况…………………………………………………… 5
详细设计…………………………………………………………6
2.1 原理概述…………………………………………………… 6
2.2主要数据结构(主要代码)……………………………………6
2.3算法流程图………………………………………………… 9
2.3.1 主流程图………………………………………………9
2.3.2 Optimal算法流程图…………………………………10
2.3.3 FIFO算法流程图……………………………………10
2.3.4 LRU算法流程图……………………………………11
2.4.1源程序文件名……………………………………………11
2.4. 2执行文件名…………………………………………… 11
三、实验结果与分析……………………………………………………11
3.1 Optimal页面置换算法结果与分析…………………… 11
3.2 FIFO页面置换算法结果与分析……………………… 16
3.3 LRU页面置换算法结果与分析……………………… 20
四、设计创新点………………………………………………………24
五、设计与总结………………………………………………………27
六、代码附录…………………………………………………………27
课程设计题目
设计内容及要求
1.1 编写程序模拟虚拟存储器管理。假设以M页的进程分配了N块内存(NM)。
输入:设定系统分配的块数,以及进程页面引用序列(也可随即产生)。
输出:显示每一次页面引用内存状态,最终显示产生缺页中断的次数及页面置换的次数(假设初始状态内存没有装入任何页面)。
必须分别使用以下置换算法完成模拟:
FIFO页面置换算法;
LRU页面置换算法;
最佳(Optimal)页面置换算法。
1.2 使用算法分析:
1.2.1 FIFO页面置换算法:
该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面以淘汰。该算法实现简单,只需把一个进程已调入内存的页面,按照先后次序链接成一个队列,并设置一个指针,称为替换指针,使它总是指向最老的页面。但该算法并不是都适合实际情况,因为在进程中,有些页面经常被访问,比如,含有全局变量、常用函数,例程等得页面,FIFO算法并不能保证这些页面不被淘汰。
LRU页面置换算法:
最近最久未使用(LRU)的页面置换算法是根据页面调入内存后的使用情况进行决策的。由于无法预测各页面将来的使用情况,只能利用“最近的过去”作为“最近的将来”的近似,因此,LRU置换算法是选择最近最久未使用的页面予以淘汰。该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问以来所经历的时间t,当须淘汰一个页面时,选择有页面中t值最大的,即最近最久为使用的页面以淘汰。
最佳(Optimal)页面置换算法:
Optimal算法是一种理论的算法,其所选择的被淘汰页面将是以后永久不使用的,或许是在最长(未来)时间内不再被访问的页面。采用最佳置换算法,通常可保证获得最低的缺页率。但由于人目前还无法预知一个进程在内存的若干个页面中,哪一个页面是未来最长时间内不再被访问的,因而该算法是无法实现的,便可以利用此算法来评价其他算法。
1.3 分工情况:共同讨论并构思,杜志豪负责FIFO和LRU算法的编程,孙嘉轶负责窗体界面和OPT算法的编写。编程中遇到困难共同讨论并解决
显示全部