ImageVerifierCode 换一换
格式:DOC , 页数:6 ,大小:470.50KB ,
资源ID:9759353      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-9759353.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验四__页式虚拟存储管理中地址转换和缺页中断.doc)为本站会员(精品资料)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

实验四__页式虚拟存储管理中地址转换和缺页中断.doc

1、实验四 页式虚拟存储管理中地址转换和缺页中断1实验目的深入了解页式存储管理如何实现地址转换;进一步认识页式虚拟存储管理中如何处理缺页中断。2实验预备知识页式存储管理中的地址转换的方法;页式虚拟存储的缺页中断处理方法。3实验内容编写程序完成页式虚拟存储管理中地址转换过程和模拟缺页中断的处理。实验具体包括:首先对给定的地址进行地址转换工作,若发生缺页则先进行缺页中断处理,然后再进行地址转换;最后编写主函数对所作工作进程测试。假定主存 64KB,每个主存块 1024 字节,作业最大支持到 64KB,系统中每个作业分得主存块 4 块。4提示与讲解页式存储管理中地址转换过程很简单,假定主存块的大小为 2

2、n 字节,主存大小为 2m字节和逻辑地址 m 位,则进行地址转换时,首先从逻辑地址中的高 m-n 位中取得页号,然后根据页号查页表,得到块号,并将块号放入物理地址的高 m-n 位,最后从逻辑地址中取得低 n 位放入物理地址的低 n 位就得到了物理地址,过程如图 2.61 所示。图 2.6 页式存储管理系统地址转换示意图地址转换是由硬件完成的,实验中使用软件程序模拟地址转换过程,模拟地址转换的流程图如图 2.7 所示(实验中假定主存 64KB,每个主存块 1024 字节,即 n=10,m=16,物理地址中块号 6 位、块内地址 10 位;作业最大 64KB,即 m=16,逻辑地址中页号 6 位、

3、页 号 页内地址块 号 块内地址页号 块号 物理地址逻辑地址m n n-1 0m n n-1 0页内地址 10 位) 。在页式虚拟存储管理方式中,作业信息作为副本放在磁盘上,作业执行时仅把作业信息的部分页面装入主存储器,作业执行时若访问的页面在主存中,则按上述方式进行地址转换,若访问的页面不在主存中,则产生一个“缺页中断” ,由操作系统把当前所需的页面装入主存储器后,再次执行时才可以按上述方法进行地址转换。页式虚拟存储管理方式中页表除页号和该页对应的主存块号外,至少还要包括存在标志(该页是否在主存) ,磁盘位置(该页的副本在磁盘上的位置)和修改标志(该页是否修改过) 。这样,在实验中页表格式如

4、图 2.7 所示。页表用数组模拟,在实验中页表数据结构定义为:define n 32 /实验中假定的页表长度,页表的长度实际上是由系统按照作业长度决定的structint lnumber; /页号int flag; /表示该页是否在主存, “1”表示在主存, “0”表示不在主存int pnumber; /该页所在主存块的块号int write; /该页是否被修改过, “1”表示修改过, “0”表示没有修改过int dnumber; /该页存放在磁盘上的位置,即磁盘块号pagen; /页表定义 开 始取 出 逻 辑 地 址 ladres的 页 号lnumber( 高 6位 ) 和 页 内 地 址

5、 ad:l r=ladres10ad=ladres=lnumber;head(head+1)%;第 j页 修 改标 志 =1?修 改 页 表 :第 j页 存 在 标 志 改 为 “0”第 lunmber页 存 在 标 志 改 为 “1”第 l r页 修 改 标 志 改 为 0第 lnuber页 主 存 块 号 为 第 j页 原 主 存 块 号结 束输 出 : * lnumber输 出 : 页 号 lnumber输 出 : 页 号 j NY图 2.8 采用先进先出页面置换算法的缺页中断流程图主存中无空闲块时,为装入一个页面,必须按某种算法从已在主存的页中选择一页,将它暂时调出主存,让出主存空间,

6、用来存放需装入的页面,这个工作称为“页面调度” 。如何选择调出的页是很重要的,常用的页面调度算法有先进先出算法、最近最少用算法和最近最不常用算法。实验中使用先进先出调度算法。先进先出调度算法总是选择驻留在主存时间最长的一页调出。先进先出算法简单,易实现。可以把在主存储器的页的页号按进入主存的先后次序排成队列,每次总是调出队首的页,当装入一个新页后,把新页的页号排入队尾。实验中,用一个数组存放页号的队列。假定分配给作业的主存块数为 m,数组可由 m 个元素组成,p0,p1pm-1;队首指针 head;采用页面预置的方法,页号队列的长度总是 m,tail 等于(head+1)%m。因此可以使用一个

7、指针,只用 head 即可。在装入一个新的页时,装入页和淘汰页同时执行,当装入一个新的页时,将其页号存入数组:淘汰页的页号=phead;phead=新装入页的页号;head=(head+1)%m;实验中,采用先进先出页面置换算法的缺页中断流程图如图 2.8 所示。开 始取 指 令 中 的 页 号 lnumber查 页 表 第 lnumber栏第 lnumber页存 在 标 志 =1? 缺 页 中 断形 成 物 理 地 址结 束NY输 出 : 物 理 地 址指 令 会 修改 页 内 容 ? NY第 lnumber页 修 改 标 志 改 为 “1”图 2.9 一条指令执行的模拟流程图实验执行一条指令时,不模拟指令的执行,只是考虑指令执行是否修改页面,若修改页面,则将该页的页表中修改标志为置“1” ,然后输出转换后的物理地址,并输出物理地址来表示一条指令执行完成;如果访问的页不在主存时,则产生缺页中断,然后直接转去缺页中断处理,最后模拟中断返回,就是返回重新进行地址转换。一条指令执行的模拟流程图如图 2.9 所示。因为没有实际主存,所以在模拟程序中首先手工输入页表信息,创建该作业的页表;然后循环执行假定的指令,观察地址转换情况。5课外题采用 LRU 页面调度算法编程实现上述虚拟页式存储管理的地址转换。

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报