

下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 / 17合肥学院计算机科学与技术系实验报告2009200920102010学年第 一 学期课程操作系统原理实验名称模拟分页式存储管理中硬件的地址转换和产生缺页中断学生姓名方岚王庆红王兆娟何佳丽专业班级07 计本(1)指导教师屠菁20092009 年 1111 月2 / 17一、实验目的在计算机系统中,为了提高主存利用率,往往把辅助存储器(如磁盘) 作为主存储器的扩充, 使多道运行的作业的全部逻辑 地址空间总和可以超出主存的绝对地址空间。 通过这次实习理解 在分页式存储管理中怎样实现虚拟存储器。 深入了解分页式存储 管理如何实现地址转换 , , 进一步认识分页式虚拟存储管理中如何 处理缺页中
2、断。二、实验内容 编写程序完成页式虚拟存储管理中地址转换过程和模拟缺 页中断的处理。 实验具体包括: 首先对给定的地址进行地址转换 工作,若发生缺页则先进行缺页中断处理, 然后再进行地址转换; 最后编写主函数对所作工作进程测试。假定主存 64KB,64KB,每个主存块 10241024 字节,作业最大支持到 64KB,64KB,系统中每个作业分得主存块 4 4 块。三、实验步骤1.1. 概要设计分页式存储管理中地址转换过程很简单, 假定主存块的大小 为2 2n字节,主存大小为 2 2m字节和逻辑地址 m m 位,则进行地址转 换时,首先从逻辑地址中的高 m-nm-n 位中取得页号,然后根据页号
3、 查页表,得到块号,并将块号放入物理地址的高 m-nm-n 位,最后 从逻辑地址中取得低 n n 位放入物理地址的低 n n 位就得到了物理地 址,过程如图 1 1 所示。3 / 17图 1 1 页式存储管理系统地址转换示意图地址转换是由硬件完成的,实验中使用软件程序模拟地址转换过程,模拟地址转换的流程图如图 2.72.7 所示 (实验中假定主存 64KB,64KB,每个主存块 10241024 字节,即 n=10,m=16n=10,m=16,物理地址中块号 6 6 位、块内地址 1010 位;作业最大 64KB,64KB,即 m=16m=16 逻辑地址中页 号 6 6 位、页内地址1010
4、位)。在分页式虚拟存储管理方式中, 作业信息作为副本放在磁盘 上,作业执行时仅把作业信息的部分页面装入主存储器, 作业执 行时若访问的页面在主存中, 则按上述方式进行地址转换, 若访 问的页面不在主存中,则产生一个“缺页中断” ,由操作系统把 当前所需的页面装入主存储器后, 再次执行时才可以按上述方法 进行地址转换。页式虚拟存储管理方式中页表除页号和该页对应 的主存块号外,至少还要包括存在标志(该页是否在主存) ,磁 盘位置(该页的副本在磁盘上的位置)和修改标志(该页是否修 改过)。缺页处理过程简单阐述如下:逻辑地址mn n-14 / 171根据当前执行指令中逻辑地址中的页号查页表,判断该 页
5、是否在主存储器中,若该页标志为“ 0 0”,形成缺页中断。中断 装置通过交换 PSWPSW 让操作系统的中断处理程序占用处理器;2操作系统处理缺页中断的方法就是查主存分配表,找一 个空闲主存块; 若无空闲块, 查页表,选择一个已在主存的页面, 把它暂时调出主存。若在执行过程中该页被修改过, 则需将该页 信息写回磁盘,否则不必写回;3找出该页的磁盘位置,启动磁盘读出该页信息,把磁盘 上读出的信息装入第 2 2 步找到的主存块,修改页表中该页的标志 为“1 1”4由于产生缺页中断的那条指令没有执行完,所以页面装 入后应重新执行被中断的指令。 当重新执行该指令时,由于要访 问的页面已在主存中,所以可
6、正常执行。关于第步的查找装入新页面的主存块的处理方式, 不同系 统采用的策略可能有所不同, 这里采用局部置换算法,就是每个 作业分得一定的主存块,只能在分得的主存块内查找空闲块, 若 无空闲主存块,则从该作业中选择一个页面淘汰出主存。2.2.详细设计5 / 17(1). .分页式虚拟存储系统是把作业信息的副本存放在磁盘 上,当作业被选中时,可把作业的开始几页装入主存且启动执行。 为此,在为作业建立页表时,应说明哪些页已在主存,哪些页尚 未装入主存,页表的格式如表 1 1:表 1 1 作业页表格式页号标志主存块号在磁盘上的位置主要数据结构设计structstruct infoinfo / 页表
7、boolbool flag;flag; 标志/用来表示对应页是否已经装入主存,标志位=1 1,则表示页已经在主存,标志位=0 0,则表示该 页尚未装入主存。longlong block;block; 主存块号/用来表示已经装入主存的页 所站的块号longlong disk;disk; 磁盘位置即磁盘块号/用来指出作业副本的每一页被存放在磁盘上的位置 pagelistSizeOfPage;pagelistSizeOfPage; /定义结构体用来存储页表信 息(2) . .作业执行时,指令中的逻辑地址指出了参加运算的操 作数存放的页号和单元号,硬件的地址转换机构按页号查页表, 若该页对6 / 17
8、应标志为“ 1 1 ”,则表示该页已在主存,根据关系式:绝 对地址=块号x块长+单元号计算出欲访问的主存单元地址。 若访问的页对应标志为“0 0”,则表示该页不在主存,这时硬件发“缺页中断”信号,由操作系 统按该页在磁盘上的位置,把该页信息从磁盘读出装入主存后再 重新执行这条指令。(3) . .设计一个“地址转换”函数 work_ex()work_ex()来模拟硬件的 地址转换工作。当访问的页在主存时,则形成绝对地址。当访问的页不在主存时,则输出“ * *该页页号”,表示产生了一次缺页中 断。(4) . .假定主存的每块长度为12128 8字节; 现有一个共七页的 作业,在函数 init_ex
9、()init_ex()中对页表初始化,将第 0 0 页到第 3 3 页中 的内容装入主存中,其余三页未装入主存;该作业的页表如表 2 2:表 2 2 主存中页表格式015011 118012219013311021400225:0023:601217 / 17如果作业依次为执行的指令序列,作业执行指令序列表,如表 3 3 作业执行指令序列表操作页号单元号操作页号单元号+0070移位4053+1050+5023X 2 015存1037存3021取2078取0056+40016040存6084(5(5). .在主函数 intint main()main() 中调用函数 work_ex()work_ex()和函数iniini t_ex()t_ex(),实现地址的转换
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电机制造中的高温耐受性设计考核试卷
- 畜牧业养殖技术考核试卷
- 超级食物与养生保健考核试卷
- 纺织原料供应链优化考核试卷
- 葡萄酒酿造废弃物处理与资源化利用考核试卷
- 种子批发物流成本控制与优化考核试卷
- 粮食仓储企业绿色经济企业绿色经济国际标准接轨考核试卷
- 谷物磨制对食品加工业的影响考核试卷
- 医疗机构投资合伙人合作协议范本
- 博物馆学术讲座兼职讲解员聘任协议
- 中国马克思主义与当代思考题(附答案)
- 急腹症的诊断与鉴别课件
- 《CAD/CAM技术基础》全套教学课件
- -巴以冲突的历史及现状
- 专职安全员安全责任履职考核表
- 医疗机构发生医疗民事赔偿情况以及卫生技术人员违法违规执业及其处理情况表
- 设计变更、工程指令、现场签证管理办法(修订)
- 金属风管支架重量计算表
- 【总平施工】室外总平施工组织设计
- 《鹅养殖技术》PPT课件
- 甲醇球形储罐设计
评论
0/150
提交评论