




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选文档 可编辑 合肥学院 计算机科学与技术系 实验报告 20112012学年第一学期 操作系统原理 模拟分页式存储管理中硬件的地址转换和产 生缺页中断 10计本(2 )班 课程 课程设计名称 学生姓名 学号 专业班级 指导教师 2011年11月 1. 实验目的: 通过实验模拟分页式存储管理中硬件的地址转换和产生缺页中断帮助理解在分页 式存储管理中怎样虚拟存储器。 2. 实验内容: 分页式虚拟存储系统是把作业信息的副本存放在磁盘上,当作业被选中时,可把作 业的开始几页先装入主存且启动执行。作业执行时,指令中的逻辑地址指出了参加运算的操 作存放的页号和单元号,硬件的地址转换机构按页号查页表,若该
2、页对应标志为“1 ”则 表示该页已在主存,这时根据关系式: 绝对地址=块号x块长+单元号 计算出欲访问的主存单元地址。如果块长为2的幕次,则可把块号作为高地址部分,把单 元号作为低地址部分,两者拼接而成绝对地址。若访问的页对应标志为“0”则表示该页 不在主存,这时硬件发“缺页中断”信号,由操作系统按该页在磁盘上的位置,把该页信息 从磁盘读出装入主存后再重新执行这条指令。 3. 实验步骤: 任务分析: (1)分页式虚拟存储系统是把作业信息的副本存放在磁盘上,当作业被选中时,可把作业 的开始几页先装入主存且启动执行。为此,在为作业建立页表时,应说明哪些页已在主存, 哪些页尚未装入主存,页表的格式为
3、: 页号 标志 主存块号 在磁盘上的位置 其中,标志-用来表示对应页是否已经装入主存,标志位=1 ,则表示该页已经在主存,标 志位=0,则表示该页尚未装入主存。 主存块号-用来表示已经装入主存的页所占的块号。 在磁盘上的位置-用来指出作业副本的每一页被存放在磁盘上的位置。 (2)作业执行时,指令中的逻辑地址指出了参加运算的操作存放的页号和单元号,硬件的地 址转换机构按页号查页表,若该页对应标志为“1”,则表示该页已在主存,这时根据关系 式: 绝对地址=块号X块长+单元号 计算出欲访问的主存单元地址。如果块长为2的幕次,则可把块号作为高地址部分,把单 元号作为低地址部分,两者拼接而成绝对地址。若
4、访问的页对应标志为“0”,则表示该页 不在主存,这时硬件发“缺页中断”信号,由操作系统按该页在磁盘上的位置,把该页信息 从磁盘读出装入主存后再重新执行这条指令。 (30设计一个“地址转换”程序来模拟硬件的地址转换工作。当访问的页在主存时,则形成 绝对地址,但不去模拟指令的执行,而用输出转换后的地址来代替一条指令的执行。当访问 的页不在主存时,则输出“ *该页页号”,表示产生了一次缺页中断。 (4)假定主存的每块长度为 128个字节;现有一个共七页的作业,其中第 0页至第3页已经 装入主存,其余三页尚未装入主存;该作业的页表为: (1 )概要设计: 定义页表结构体typedef struct 页
5、号、标志、主存块号、在磁盘存储位置 table 用以存放页表的数据结构信息, 定义一个操作表数据结构 typedef struct 操作、页号、单元号 list; 用以存放输入的操作指令, 当输入操作指令时, 通过操作表中的页号访问页表, 查看页表的 标志位flag是否为1,若flag= 1 ,则表示在内存通过绝对地址=块号x块长+单元号 模拟 出硬件的地址转换工作,若 flag=0 ,则表示不再内存,产生一次缺页中断输出“ * 该页页 号”,表示产生了一次缺页中断。 主函数 main() 用以实现指令的输出和地址的转换工作。 (2) 流程图如下: (3) 详细设计: typedef stru
6、ct / 页表定义 int page num; / 页号 int flag; / 标志 int block;/主存块号 int locatio n; 磁盘上的位置 table;存储页表信息 typedef struct / 操作表定义 char ope10;/ 操作 int pagenum;/ 页号 int address;/ 单元号 list; table p17= 0,1,5,11,1,1,8,12,2,1,9,13, 3,1,1,21,4,0,NULL,22,5,0,NULL,23,6,0,NULL,121 ; 模拟输入页表信息,期中 0,1,2,3, 表示存入内存, 4,5,6, 表示
7、未装入内存。 Main 主函数的实现如下 定义一个数组 p2N 用以存储输入的指令 用 for(i=0;iN;i+) 实现操作指令数循环 、 page=p2i.pagenum; flag=p1page.flag;/ 通过页号访问页表的标志位 if(flag=0 输出模拟转换的地址; else 页面超出; (4)调试分析: 程序只是实现简单的模拟地址转换工作,当缺页时也不做任何处理功能简单 (5 )测试结果: 在内存输出模拟的地址: c:-DocuKents anil Se-tllngsA(L.inj-3Jt rartor|)ebu.g!lt2_ e: the Ope rat iny GDmni
8、andint, out, displaced Enter* t:he connand = ope =祥 pasrenanc- 2 Un itnuin= 15 mena.ddres:s =blo匚呂巳C12內亡1.5) i nena.ddres5= 116? Entel* the caniinand: pe = out pagrenane= 0 Unitnun= int flag; int block; int location;/ 页表定义 table; typedef struct / 操作表定义 char ope10; int pagenum; int address; list; tab
9、le p17= 0,1,5,11,1,1,8,12,2,1,9,13, 3,1,1,21,4,0,NULL,22,5,0,NULL,23,6,0,NULL,121 ; void main() list p2N; int i,page,flag, memaddress; printf(the Operating command has(+,-,*,int,out,displace)n); for(i=0;iN;i+) printf(Enter the command:nope= ); scanf(%s, printf(pagename= ); scanf(%d, printf(Unitnum= ); scanf(%d, page=p2i.pagenum; flag=p1page.flag; if(flag=0 else if(p2i.pagenum7) memaddress=p1page.block*size+p2i.addres
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北京市东城区北京市文汇中学2025-2026学年九年级上学期9月月考英语试题(含答案)
- 小米汽车课件
- 2025年国家公务员考试公共基础知识法律常识题500题及答案
- 高科技玩具市场的前景与发展挑战
- 2025年贵州省继续教育公需科目考试题(含答案)
- 2025年广西防城港市辅警招聘考试题库及答案
- 2025年辅警考试公安基础知识考试试题库及答案
- 2025年安徽省辅警招聘考试题题库(含参考答案)
- 2025辅警招聘考试全真模拟模拟题完整版附答案详解
- 2025年广东阳江市阳东区区内选调教师22人笔试备考题库含答案详解
- 成人雾化吸入护理团体标准
- 2025年彩焰蜡烛项目可行性研究报告
- 中医秋季养生宣讲
- 635MPa级热轧带肋高强钢筋应用技术规程
- 历年全国普通话考试真题50套
- 第三单元小数除法(单元复习讲义)教师版-2024-2025学年五年级上册(人教版)
- 人教版(2024新版)七年级上册英语Starter Unit1单元测试卷(含答案)
- 化粪池清底服务合同
- TGXAS-松阔混交林培育技术规程编制说明
- 幼儿园的食品安全工作计划
- (新教科版)科学五年级上册全册教学反思
评论
0/150
提交评论