页面置换先进先出

上传人:s9****2 文档编号:564712716 上传时间:2023-09-12 格式:DOCX 页数:20 大小:303.91KB
返回 下载 相关 举报
页面置换先进先出_第1页
第1页 / 共20页
页面置换先进先出_第2页
第2页 / 共20页
页面置换先进先出_第3页
第3页 / 共20页
页面置换先进先出_第4页
第4页 / 共20页
页面置换先进先出_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《页面置换先进先出》由会员分享,可在线阅读,更多相关《页面置换先进先出(20页珍藏版)》请在金锄头文库上搜索。

1、彎品龙比番科疑乂夕率苛轡晚XIAN u NiVBSsnv OF ARCHITEQTW AMD TECHNOIOC HUAQI MG CQl LEGE课程设计(论文)题目:页面置换算法-先进先出(FIFO)院(系): 信息与控制工程系 专业班级:计算机姓 名:学 号:指导教师:2015 年1 月 23 日西安建筑科技大学华清学院课程设计(论文)任务书专业班级: 计算机 学生姓名:指导教师(签名):一、课程设计(论文)题目页面置换算法模拟-先进先出(FIFO)算法:编写一个页面置换算法程序,采用先 进先出(FIFO)算法,在需要页面调出时,淘汰最先进入内存的页面,即选择在内存中 驻留时间最久的页面

2、予以淘汰。二、本次课程设计(论文)应达到的目的 操作系统课程实践性比较强。课程设计是加强学生实践能力的一个强有力手段。课 程设计要求学生在完成程序设计的同时能够写出比较规范的设计报告。严格实施课程设 计这一环节,对于学生基本程序设计素养的培养和软件工作者工作作风的训练,将起到 显著的促进作用。本题目要达到目的:通过对页面、页表、地址转换和页面置换过程的模拟,加深对 请求调页系统的原理和实现过程的理解。三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技术参 数、设计要求等)1)假设每个页面中可存放10条指令,分配给作业的内存块数为4。2)模拟一个作业的执行过程,该作业共有320 条指

3、令,即它的地址空间为32 页, 目前它的所有页都还未调入内存。在模拟过程中,如果所访问的指令已在内存,则显示 其物理地址,并转下一条指令。如果所访问的指令还未装入内存,则发生缺页,此时需 记录缺页的次数,并将相应页调入内存。如果4个内存块均已装入该作业,则需进行页 面置换,最后显示其物理地址,并转下一条指令。在所有320 指令执行完毕后,请计算并显示作业运行过程中发生的缺页率。3)置换算法:采用先进先出(FIFO)置换算法。四、应收集的资料及主要参考文献: 操作系统经典算法的编程实现资料非常丰富,可以在图书馆找书籍或在因特网上找 资料,都很容易找到,但是大部分代码是不全的,不能直接运行,希望大

4、家只是把它当 参考,编码还是自己做。参考文献: 【1】汤小丹、梁红兵、哲凤屏、汤子瀛 编著.计算机操作系统(第三版) .西安: 西安电子科技大学出版社, 2007.5【2】史美林编.计算机操作系统教程.北京:清华大学出版社, 1999.11 【3】徐甲同编著.操作系统教程.西安:西安电子科技大学出版社, 1996.8【4】Clifford,A.Shaffer编著.数决结构与算法分析(C+版).北京:电子工业出 版社, 2005.7【5】蒋立翔编著.C+程序设计技能百练北京:中国铁道出版社,2004.1五、审核批准意见教研室主任(签字)设计总说明该页面置换先进先出算法的设计的主要目的是,通过对页

5、面、页表、地址 转换和页面置换过程的模拟,加深对请求调页系统的原理和实现过程的理解。该设计的内容有:1)假设每个页面中可存放 10 条指令,分配给作业的内 存块数为 4。2)模拟一个作业的执行过程,该作业共有 320 条指令,即它的地址空间 为 32 页,目前它的所有页都还未调入内存。在模拟过程中,如果所访问的指令 已在内存,则显示其物理地址,并转下一条指令。如果所访问的指令还未装入 内存,则发生缺页,此时需记录缺页的次数,并将相应页调入内存。如果4个 内存块均已装入该作业,则需进行页面置换,最后显示其物理地址,并转下一 条指令。在所有 320 指令执行完毕后,请计算并显示作业运行过程中发生的

6、缺页 率。3)置换算法:采用先进先出(FIFO)置换算法。关键字:visual c +,页面置换,缺页率目录1. 设计目的 12. 主要思想描述 13. 需求分析 24. 概要设计 35. 详细设计 56. 调试分析 87. 使用说明 98. 设计总结 119. 参考文献 1110程序源代码 12操作系统课程设计页面置换算法模拟-先进先出(FIFO)算法1. 设计目的“操作系统”是计算机专业的核心专业课,“操作系统课程设计”是理解 和巩固操作系统基本理论、原理和方法的重要的实践环节。操作系统课程主要讲述的内容是多道操作系统的原理与技术,与其它计算 机原理、编译原理、汇编语言、计算机网络、程序设

7、计等专业课程关系十分密 切。本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统 概念,理解和巩固操作系统基本理论、原理和方法,掌握操作系统基本理论与 管理方式。在算法基础上,解决实际的管理功能的问题,提高学生实际应用、 编程的能力。本题目的设计要达到目的:通过对页面、页表、地址转换和页面置换过程 的模拟,加深对请求调页系统的原理和实现过程的理解。2. 主要思想描述页面置换先进先出(FIFO)算法的主要思想是:当需要淘汰一个页面时,总 是选择驻留主存时间最长的的页面进行淘汰,即先进入主存的页面先淘汰。其 理由是:最早调入主存的页面不再被使用的可能性最大。3. 需求分析3.1 数据需

8、求实现设计的前提是初始化,输入页面总数M(M32)、物理块N(N4)、页面号n。3.2 基本功能需求该先进先出(FIFO)页面置换算法设计主要完成的功能有:1) 存放页面数M(M=32),分配给作业的内存块数为N(N=4)。2) 计算并显示作业运行过程中发生的缺页率。3) 置换算法:采用先进先出(FIFO)置换算法。3.3 非功能性需求用户界面需求:简洁、易用、易懂、友好的用户界面。硬件要求:装有Visual C+6.0的计算机。可靠性需求:保证用户在正常使用本系统时,用户的操作或误操作不会产生数 据的丢失。4. 概要设计4.1 数据结构先进先出(FIFO)算法即先入先出队列,先进入的对象先出

9、来。次紧急报文图 1 队列4.2 系统包含的函数int N;/需要进入内存的页面总数。int k,m,n; /k 为数组下标, m 表示物理块数, n 表示页面号int i,j,count=0; /i、j 为数组下标, count 为计数器。int a100,b100;float rate;/计算并显示作业运行过程中发生的缺页率。int main()/主函数4.3 函数间的关系该程序中函数间的关系是由main函数作为入口函数,根据不同的选择调用不同的函数,还有函数间的调用。4.4 系统功能模块图页面置换先进先出(FIFO)算法输入输入系统IflJ 女分配进入的物内存理块的页数面总(M=4数)(

10、N=32)缺页中断次数缺页中断率图 2 系统功能模块图5. 详细设计5.1 系统的详细定义和介绍本题目的设计要达到目的:通过对页面、页表、地址转换和页面置换过程的模拟,加深对请求调页系统的原理和实现过程的理解主要运用了 while 语句来实现。部分代码如下:using namespace std;#define Max 32/某进程调入内存中的最大页面数#define Size 4/系统为某进程分配的最大物理块数int N;/需要进入内存的页面总数。int k,m,n;k为数组下标,m表示物理块数,n表示页面号。int i,j,count=0; i、j为数组下标,count为计数器。int a

11、100,b100float rate;/计算并显示作业运行过程中发生的缺页率。int main()/主函数5.2 系统功能模块介绍该先进先出(FIFO)页面置换算法设计各模块主要完成的功能有:1) 存放页面数 M(M=32)。2) 分配给作业的内存块数为 N(N=4)。3) 计算并显示作业运行过程中发生的缺页率。4) 置换算法:采用先进先出(FIFO)置换算法。5) 结束5.3 具体模块设计1)输入系统分配的物理块数(M=4)、输入需要的内存页面总数(N=32)、输 入页面号n如图所示:M = 1是Nv=4否是结束开始输入系统分配的物理块数M输入需要进入内存的页面总数N否重新输入物理块数M=1

12、0重新输入页面总数N=40输入页面号n初始化页面图 3 输入模块流程图2) 输出是否缺页、输出系统分配的物理块数、输出需要进入内存的页面总 数、输出缺页中断的次数、根据输出的页面总数和缺页中断的次数计算缺 页中断率假如输入内存的页面总数是 10,系统分配的物理块数是 4,页面号是 7 1 4 5 7 2 3 0 5 6则输出结果如图所示:图 4 输出模块流程图6. 调试分析测试数据:我们可以先给出一组符合要求的数据进行测试, 如下:输入系统分配的物理块数(M=4):4;输入需要进入内存的页面总数(N=32):10;输入页面号: 7 1 4 5 7 2 3 0 5 6。 输出结果为:7页面进入内

13、存,产生第 1 次缺页1 页面进入内存,产生第2次缺页.4 页面进入内存,产生第3次缺页.5 页面进入内存,产生第4次缺页.7内存中有这个页面,直接访问.2 7 被置换出去,产生第 5 次缺页.3 1 被置换出去,产生第 6 次缺页.04 被置换出去,产生第 7 次缺页.5 内存中有这个页面,直接访问.6 5 被置换出去,产生第 8 次缺页.缺页中断次数为 8 次;缺页中断率为:80%7.使用说明各界面如下:图6输入模块06i被置换出去,产生第次缺贞.4被置换出去,产生第7次缺页.内存中有这个页面,直接访问.E被置换出去,产生第召次缺页-Press any key to continue”宪睡

14、兎岀巩品童苕:p专峦物睡块空闲* 理块M:4.J*L 人_4贡面囂涣先却 謁盘罷探匯贡电断次竅为:8次.區薯尊奋星存的页面总数 瞅=40:10.图 8 输出模块8.设计总结在这次页面置换先进先出(FIFO)的设计中,我总是一味的调试代码,没 有仔细研究先进先出(FIFO)的算法的实现,直到后来意识到这样不但浪费时 间,还会了解不到这个算法的实现原理,待到弄懂它的实现,再一次研究代 码,结合课本会容易很多。这次课设不仅让我对操作系统这门课有了更深的了解,同时也加深了我对 先进先出)FIFO)算法的了解和掌握。这次的课程设计收获颇多,首先加深了地VC+语言的进本框架的了解,其 次通过实践先进先出页面置换算法,使自己对课本上的知识有了更深层次的认 识。9.参考文献【1】汤小丹、梁红兵、哲凤屏、汤子瀛 编著.计算机操作

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

当前位置:首页 > 学术论文 > 其它学术论文

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