操作系统课程设计--请求调页存储管理方式的模拟1精选.doc

操作系统课程设计--请求调页存储管理方式的模拟1精选.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统课程设计--请求调页存储管理方式的模拟1精选

课 程 设 计 课程设计名称: 操作系统课程设计 专 业 班 级 : 学 生 姓 名 : 学 号 : 指 导 教 师 : 课程设计时间: 专业课程设计任务书 学生姓名 专业班级 学号 题 目 请求调页存储管理方式的模拟1)假设每个页面中可存放10条指令,分配给作业的内存块数为4。2)用语言模拟一个作业的执行过程,该作业共有320条指令,即它的地址空间为32页,目前它的所有页都还未调入内存。在模拟过程中,如果所访问的指令已在内存,则显示其物理地址,并转下一条指令。如果所访问的指令还未装入内存,则发生缺页,此时需记录缺页的次数,并将相应页调入内存。如果4个内存块均已装入该作业,则需进行页面置换,最后显示其物理地址,并转下一条指令。在所有320指令执行完毕后,请计算并显示作业运行过程中发生的缺页率。3)置换算法:先进先出(FIFO)置换算法。通过对页面、页表、地址转换和页面置换过程的模拟,加深对请求调页系统的原理和实现过程的理解。 汤子瀛 《计算机操作系统》(修订版)西安电子科技大学出版社 2001 张尧学 史美林《计算机操作系统教程》实验指导 清华大学出版社 2000 罗宇等 《操作系统课程设计》机械工业出版社 2005 审查意见 指导教师签字: 教研室主任签字: 年 月 日 说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页 1 需求分析 该设计使用C程序模拟请求调页存储管理方式,实现对页面、页表、地址转换和页面置换过程的模拟假设每个页面中可存放10条指令,分配给作业的内存块数为4。用语言模拟一个作业的执行过程,该作业共有320条指令,即它的地址空间为32页,目前它的所有页都还未调入内存。在模拟过程中,如果所访问的指令已在内存,则显示其物理地址,并转下一条指令。如果所访问的指令还未装入内存,则发生缺页,此时需记录缺页的次数,并将相应页调入内存。如果4个内存块均已装入该作业,则需进行页面置换,最后显示其物理地址,并转下一条指令。在所有320指令执行完毕后,请计算并显示作业运行过程中发生的缺页率。置换算法:先进先出(FIFO)置换算法。320条指令。指令的地址按下述原则生成: ① 50%的指令是顺序执行的; ② 25%的指令是均匀分布在前地址部分; ③ 25%的指令是均匀分布在后地址部分; 具体的实施方法是: ① 在[0,319]的指令地址之间随机选取一起点m; ② 顺序执行一条指令,即执行地址为m+1的指令; ③ 在前地址[0,m+1]中随机选取一条指令并执行,该指令的地址为m′; ④ 顺序执行一条指令,其地址为m′+1的指令; ⑤ 在后地址[m′+2,319]中随机选取一条指令并执行; ⑥ 重复上述步骤①~⑤,直到执行320次指令。 2.2 将指令序列变换为页地址流 ① 设页面大小为1K; ② 用户内存容量为4页到32页; ③ 用户虚存容里为32K。 在用户虚存中,按每K存放10条指令排列虚存地址,即320条指令在虚存中的存放方式为: 第0条~第9条指令为第0页(对应虚存地址为[0,9]); 第10条~第19条指令为第1页(对应虚存地址为[10,19]); …… …… 第310条~第319条指令为第31页(对应虚存地址为[310,319])。 按以上方式,用户指令可组成32页。 2.3 计算先进先出(FIFO)算法在不同内存容量下的命中率。 其中,命中率=1-页面失效次数/页地址流长度 3 运行环境 3.1 硬件环境 PC 3.2 软件环境 (1)Windows XP (2)Microsoft Visual Microsoft Visual C++6.0 4.2 编程语言 C语言 5 详细设计#define INVALID -1 #define total_instruction 320 /* 指令流长 */ #define total_vp 32 /* 虚页长 */ 5.2 页面的数据结构 typedef struct{ //定义页面类型 int pn; //pn为页号 int pfn; //pfn为块号 int counter; //为一个周期内访问页面次数 int time; //为访问时间 }pl_type; pl_type pl[total_vp]; //页面结构数组 5.

文档评论(0)

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

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

1亿VIP精品文档

相关文档