操作系统课程设计报告
院(系):专业:姓名班级:_学号题目:指导教师
信息与数学学院信息与计算科学
张三信计11402122914
页面置换算法孙庆生
2017年5月27日
f一、课程设计目的《Li
ux操作系统课程设计》是在学完《操作系统》课程之后的实践教学环节,是复习和检
验所学课程的重要手段。通过实验环节,加深学生对操作系统基本原理和工作过程的理解,提高学生独立分析问题、解决问题的能力,增强学生的动手能力。二、课程设计的任务和要求
由于具体的操作系统相当复杂,不可能对所有管理系统进行详细地分析。因此,选择了操作系统中最重要的管理之一存储器管理,作为本设计的任务。页面置换算法是虚拟存储管理实现的关键,要求在充分理解内存页面调度机制的基础上,模拟实现OPT、FIFO、LRU几种经典页面置换算法,比较各种置换算法的效率及优缺点,从而了解虚拟存储实现的过程。
具体任务如下:1分析设计内容,给出解决方案①要说明设计实现的原理;②采用的数据结构:定义为进程分配的物理块;定义进程运行所需访问的页面号;定义页的结构;2)模拟三种页面置换算法;3)比较各种算法的优劣。4)对程序的每一部分要有详细的设计分析说明。5)源代码格式要规范。6)设计合适的测试用例,对得到的运行结果要有分析。任务要求:
Li
ux平台下实现(Wi
dowsVMwareUbu
tu)
三、课程的详细设计
1)系统设计
在进程运行过程中,若其所要访问的页面不在内存而需把它们调入内存,但内存已无空闲空间时,为了保证该进程能正常运行,系统必须从内存中调出一页程序或数据,送磁盘的对换区中。但应将哪个页面调出,须根据一定的算法来确定。通常,把选择换出页面的算法称为页面置换算法。一个好的页面置换算法,应具有较低的页面更换频率。从理论上讲,应将那些以后不再
f会访问的页面换出,或将那些在较长时间内不会再访问的页面调出。2)主程序流程图
开始
输入页面序列输入物理块数
调用各种置换算法,OPT,LRU,FIFO页面置换算法
计算缺页次数和缺页率
结束
3)先进先出FIFO页面置换算法
主流程图
算法的基本思想:该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。该算法实现简单只需把一个进程已调入内存的页面,按先后次序存入一个时间数组,并将其中时间值最大的页面进行淘汰,并替换入新的页面就可以实现。
算法流程图:
f入口
初始化数据
i指向下一个页面
Y页面是否存在
N物理块是否有空闲
输出当前页r