操作系统实验报告-模拟分页式虚拟存储管理内容摘要:

页不在主存时,则输出“ *该页页号”,表示产生了一次缺页中断。 该模拟程序的算法如图 32。 图 32 地址转换算法 3. 1. 4 假定主存的每块长度为 128 个字节;现有一个共七页的作业,其中第 0 页至第 3 页已经装入主存,其余三页尚未装入主存;该作业的页表为: 表 2 作业页表 0 1 5 011 1 1 8 012 2 1 9 013 3 1 1 021 4 0 022 5 0 023 6 0 121 如果作业依次执行的指令序列为: 表 3 指令序列 操作 页号 单元号 操作 页号 单元号 + 0 070 移位 4 053 + 1 050 + 5 023  2 015 存 1 037 存 3 021 取 2 078 取 0 056 + 4 001 6 040 存 6 084 运行设计的地址转换程序,显示或打印运行结果。 因仅模拟地址转换,并不模拟指令的执行,故可不考虑上述指令序列中的操作。 3. 2 用最近最少用( LRU)页面调度算法处理缺页中断 3. 2. 1 在分页式虚拟存储系统中,当硬件发出“缺页中断”后,引出操作系统来处理这个中断事件。 如果主存中已经没有空闲块,则可用 LRU 页面调度算法把该作业中距现在最久没有被访问过的一页调出,存放到磁盘上。 然后再把当前要访问的页装入该块。 调出和装入后都要修改页表中对应页的标志。 3. 2. 2 LRU 页面调度算法总是淘汰该作业中距现在最久没被访问过的那页,因此可以用一个数组来表示该作业已在主存的页面。 数组中的第一个元素总是指出当前刚访问的页号,因此最久没被访问过的页总是由最后一个元素指出。 如果主存只有四块空闲块且执行 3. 1. 4 中假设的指令序列,采用 LRU 页面调度算法,那么在主存中的页面变化情况如下: 表 4 页面变化情况 当产生缺页中断后 ,操作系统总是淘汰由最后一个元素所指示的页,再把要访问的页装入淘汰页所占的主存块中,页号登记到数组的第一个元素中,重新启动刚才那条指令执行。 3. 2. 3 编制一个 LRU 页面调度程序,为了提高系统效率,如果淘汰的页在执行中没有修改过,则可不必把该页调出,模拟调度算法。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。