《模拟分页式存储管理中硬件的地址转换和产生缺页中断》由会员分享,可在线阅读,更多相关《模拟分页式存储管理中硬件的地址转换和产生缺页中断(5页珍藏版)》请在金锄头文库上搜索。
1、实验三课程名称:操作系统课程类型:必修实验项目名称:存储器管理实验题目:模拟分页式存储管理中硬件的地址转换和产生缺页中断。一、实验目的在计算机系统中,为了提高主存利用率,往往把辅助存储器(如磁盘)作为主存储器的扩充,使多道运行的作业的全部逻辑地址空间总和可以超出主存的绝对地址空间。用这种办法扩充的主存储器称为虚拟存储器。通过本实验帮助同学理解在分页式存储管理中怎样实现虚拟存储器。二、实验要求模拟分页式存储管理中硬件的地址转换。需要为作业建立页表,应说明哪些页已在主存,哪些页尚未装入主存。作业执行时,指令中的逻辑地址指出了参加运算的操作存放的页号和单元号,硬件的地址转换机构按页号查页表,若该页对
2、应标志为“1”,则表示该页已在主存,这时根据关系式“绝对地址=块号块长+单元号”计算出欲访问的主存单元地址。若产生缺页中断,引出操作系统来处理这个中断事件。如果主存中已经没有空闲块,则可用FIFO 页面调度算法把该作业中最先进入主存的一页调出,存放到磁盘上,然后再把当前要访问的页装入该块。调出和装入后都要修改页表页表中对应页的标志。三、设计思想1、物理设计全局变量定义如下:struct info/页表int block;/物理页架号int disk;/在磁盘上的物理块号int flag; /内外标志pagelist10;int po;/队列标记int t4; 2、程序流程图(见下图)开始选择菜单的选项 choice页表初始化init( );地址重定位work( );输出菜单1退出0结束图 1-1 主程序的流程图i=0i=10?否该页在内存中么?否按 FIFO 置换出一个页,并将缺的页调入内存,调整页表。计算物理地址。计算物理地址是是输出地址越界逻辑页号是-1 么?否结束 图 1-3 work( )的流程图