(流程图)页面置换算法课程设计11.docx

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE PAGE # 操作系统课程设计报告 题目:页面置换算法模拟程序 学院名称: 专业班级: 学生姓名: 指导教师: 成绩: 目录 TOC \o "1-5" \h \z 一、 设计目的 3 二、 设计题目 3 \o "Current Document" 2.1设计内容 3 \o "Current Document" 2.2设计要求 3 \o "Current Document" 三、 设计过程 4 \o "Current Document" FIFO (先进先出) 4 \o "Current Document" LRU (最近最久未使用) 5 \o "Current Document" OPT (最佳置换算法) 6 \o "Current Document" 3.4随机数发生器 7 \o "Current Document" 四、 完整代码 7 \o "Current Document" 五、 运行结果演示 13 六、 设计心得 16 七、 参考文献 16 一、设计目的 操作系统是计算机教学中最重要的环节之一,也是计算机专业学生的一门 重要的专业课程。 操作系统质量的好坏, 直接影响整个计算机系统的性能和用户 对计算机的使用。 一个精心设计的操作系统能极大地扩充计算机系统的功能, 充 分发挥系统中各种设备的使用效率, 提高系统工作的可靠性。 由于操作系统涉及 计算机系统中各种软硬件资源的管理, 内容比较繁琐, 具有很强的实践性。 要学 好这门课程,必须把理论与实践紧密结合,才能取得较好的学习效果。 本课程设计是学生学习完 《计算机操作系统》 课程后, 进行的一次全面的综 合训练,通过课程设计,让学生更好地掌握操作系统的原理及实现方法 , 加深对 操作系统基础理论和重要算法的理解,加强学生的动手能力。 熟悉页面置换算法及其实现,引入计算机系统性能评价方法的概念。 二、设计题目 :页面置换算法模拟程序 2.1 设计内容 编制页面置换算法的模拟程序。 2.2 设计要求 . 用随机数方法产生页面走向,页面走向长度为 L(15<=L<=20),L 由控制台输 入。 .根据页面走向,分别采用Optinal、FIFO、LRU算法进行页面置换,统计缺页 率。 .假定可用内存块为m(3<=m<=5) m由控制台输入,初始时,作业页面都不在 内存。 . 要求写出一份详细的设计报告。课程设计报告内容包括:设计目的、设计内 容、设计原理、算法实现、流程图、源程序、运行示例及结果分析、心得体会、 参考资料等。 设计过程 3.1 FIFO (先进先出) 设计原理:需要进行页面置换,即把内存中装入最早的那个页面淘汰, 换入当前 的页面。 算法流程图: 3.2 LRU (最近最久未使用) 3.2 LRU (最近最久未使用) 设计原理: 当需要淘汰某一页时,选择离当前时间最近的一段时间内最久没有使用过的页先 淘汰。该算法的主要出发点是,如果某页被访问了,则它可能马上还要被访问。 或者反过来说,如果某页很长时间未被访问,则它在最近一段时间也不会被访问 算法流程图: "开始 页面走向存入数组 p[]中,内 存块用page[] 页面走向存入数组 p[]中,内 存块用page[]表示初始化为0 把page[] 把page[]中最近最久未使 用的页面置换出去.i++ 把p[i]的内容直接 装入最上面一个 空内存块,i++ 结束 3.3 OPT (最佳置换算法) 设计原理:需要进行页面置换,把内存中以后一段时间都不使用或是使用时间离 现在最远的页面换出 流程图 3.4 随机数发生器 #include <stdlib.h> #include <time.h> // 准备用时钟函数调用库函数 t=time(NULL);// 取时钟时间并存入 t 调用库函数 srand(t);// 用时间 t 初始化随机数发生器调用 库函数 x=rand( )%10+1;// 返回一个 1~10 之间的随机数 四.完整代码 #include<iostream.h> #include <stdlib.h> #include <time.h> #include <stdio.h> #define L 20// 页面走向长度最大为 20 int M; // 内存块 struct Pro// 定义一个结构体 { int num,time; }; Input(int m,Pro p[L])// 打印页面走向状态 { cout<<" 请输入实际页面走向长度 L(15<=L<=20) :"; do { cin>>m; if(m>20||m<15)cout<v" 实际页面长度须在15?20之间;请重新输入L: J e

文档评论(0)

497721292 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档