操作系统课程设计-模拟页式存储管理

上传人:aa****6 文档编号:29251877 上传时间:2018-01-23 格式:DOC 页数:25 大小:444.50KB
返回 下载 相关 举报
操作系统课程设计-模拟页式存储管理_第1页
第1页 / 共25页
操作系统课程设计-模拟页式存储管理_第2页
第2页 / 共25页
操作系统课程设计-模拟页式存储管理_第3页
第3页 / 共25页
操作系统课程设计-模拟页式存储管理_第4页
第4页 / 共25页
操作系统课程设计-模拟页式存储管理_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《操作系统课程设计-模拟页式存储管理》由会员分享,可在线阅读,更多相关《操作系统课程设计-模拟页式存储管理(25页珍藏版)》请在金锄头文库上搜索。

1、操作系统课程设计报告模拟页式存储管理院 系: 计算机科学技术学院 班 级: *班 姓 名: * 学 号: *指导教师: *8 2016 年 12 月 9 日操作系统原理课程设计任务书一、题目:磁盘调度 二、设计要求(1)*(组长)、*负责设计与实现。(2)查阅相关资料,自学具体课题中涉及到的新知识。(3)采用结构化、模块化程序设计方法,功能要完善,具有一定的创新。(4)所设计的程序应有输入、输出。(5)按要求写出课程设计报告,并于设计结束后 1 周内提交。其主要内容包括:封皮、课程设计任务书,指导教师评语与成绩、目录、概述、软件总体设计、详细设计、软件的调试、总结、谢启、附录:带中文注释的程序

2、清单、参考文献。报告一律用 A4 纸打印,中文字体为宋体,西文字体用 Time New Roma,一律用小四号字,行距采用“固定值”18 磅,首行缩进 2 字符。总体设计应配合软件总体模块结构图来说明软件应具有的功能。详细设计应用传统或N-S 流程图和屏幕抓图说明,调试的叙述应配合出错场景的抓图来说明出现了哪些错误,如何解决的。三、课程设计工作量由于是设计小组团结协作完成设计任务,一般每人的程序量在 200 行有效程序行左右,不得抄袭。四、课程设计工作计划2016 年 11 月 28 日,指导教师讲课,学生根据题目准备资料;2016 年 11 月 29 日2016 年 12 月 1 日,进行总

3、体方案设计;2016 年 12 月 3 日2016 年 12 月 5 日,完成程序模块并通过独立编译;2016 年 12 月 6 日2016 年 12 月 7 日,将各模块集成为一个完整的系统,并录入足够的数据进行调试运行;2016 年 12 月 8 日2016 年 12 月 9 日,验收、撰写报告;指导教师签章: 教研室主任签章 操作系统原理课程设计指导教师评语与成绩指导教师评语:课程设计表现成绩: 课程设计验收成绩: 课程设计报告成绩: 课程设计 总成绩: 指导教师签章 2016 年 12 月 9 日目 录第 一 章 引 言 .1第 二 章 设 计 目 的 及 要 求 .12.1 设 计

4、目 的 .12.2 设 计 要 求 .1第 三 章 概 要 设 计 .23.1 系 统 功 能 结 构 .23.2 程 序 文 件 详 细 说 明 .33.3 整 体 流 程 图 .3第 四 章 详 细 设 计 .44.1 数 据 定 义 .44.2 算 法 分 析 .44.3 核 心 代 码 与 运 行 效 果 .6第 五 章 软 件 调 试 .185.1 系 统 测 试 .185.2 算 法 效 率 分 析 和 对 比 .19参 考 文 献 .19第 六 章 课 程 设 计 总 结 .20第 七 章 致 谢 .210第一章 引言在进程运行过程中,若其所要访问的页面不在内存,而需要把它们调入

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

6、出。目前已有多种页面置换算法,它们都试图更接近于理论上的目标。第二章 设计目的及要求2.1 设计目的通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。2.2 设计要求根据模拟的页式管理设计,掌握在页式存储管理中最基本的三种页面调度算法 FIFO、 LRU 以及 OPT。但在三种算法中均要求在调度程序中产生的页面1序列是随机产生的,而不是人为的输入,在执行时只需改变页面的大小及内存容量就可以得到不同的页面序列,另外还需要说明随机的性能和其性能可能对算法的影响,并对随机性要有一定的参数控制能力。此外,计算并输出FIFO、 LRU 以及 OPT

7、算法在不同内存容量下的命中率。根据方法的执行过程,编写一个解决上述问题的程序,显示访问每个值页面中的值。具体参数:访问串的长度,访问串,页面个数。分别用 3 种不同的方法实现页面的置换,并输出相关信息。第三章 概要设计3.1 系统功能结构图 3-1 系统功能结构图23.2 程序文件详细说明软件内设置五个文件,其中一个 h 文件,包含所有使用到的头文件,宏定义等等(此处不多加赘述),4 个 c 文件,分别是 main 文件,function 文件,init文件,algorithms 文件。1.main 文件:main 文件主要包含 main 函数的代码以及一些全局变量的定义。2.init 文件:

8、该文件中有界面设计以及算法参数初始设置文件,其中包含两个函数。3. function 文件:该文件中主要包含一些算法要用到的底层函数。4. algorithms 文件:该文件中有三个算法设计分别是 FIFO 算法,LRU 算法,OPT 算法 3.3 整体流程图图 3-3 系统整体流程图3第四章 详细设计4.1 数据定义typedef struct pagebool flag10;/标志位,标志该页是否在内存中 int address10;/页内地址,初始为-1 int time10;/生存时间 ,初始为 0 int times;Page;extern int a100; /extern 表示此

9、变量是在别处定义的要在此处引用 extern int memo100;extern int page_degree;/页面个数 extern int memo_degree;/内存大小extern int suanfa_flag;/算法标志 4.2 算法分析要学成功实现算法,首先要知道各个方法是怎么做的,即原理是怎样的,下面是三种算法的原理。FIFO 算法是先进先出,当当前内存中没有正要访问的页面时,置换出最先进来的页面。LRU 算法是最近最久未使用,当当前内存中没有正要访问的页面时,置换出在当前页面中最近最久没有使用的页面。OPT 算法是未来最远出现,当当前内存中没有正要访问的页面时,置换出

10、当前页面中在未来的访问页中最远出现的页面或再也不出现的页面。4.2.1 程序流程图本次课程设计的主要流程是 3 种置换算法的流程图,流程图如下所示:4图 4-2-1 FIFO 算法流程图 图 4-2-2LRU 算法流程图 54.3 核心代码与运行效果FIFO 算法:int FIFO( int num)int i,j,time_loc,meflag=0,meloc=0;Page fifo;fifo.times=0;for(i=0;ilru.timej)13time_loc=j;if(lru.flagai=true)if(suanfa_flag=3)printf(%d 号页面在内存中,不需要调入内存n,ai);else/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号