虚存管理OS实验上课讲义.doc

虚存管理OS实验上课讲义.doc

ID:57167353

大小:75.50 KB

页数:18页

时间:2020-08-05

虚存管理OS实验上课讲义.doc_第1页
虚存管理OS实验上课讲义.doc_第2页
虚存管理OS实验上课讲义.doc_第3页
虚存管理OS实验上课讲义.doc_第4页
虚存管理OS实验上课讲义.doc_第5页
资源描述:

《虚存管理OS实验上课讲义.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、虚存管理OS实验精品文档实验三虚存管理一、实验目的1.加深对存储管理概念的理解。2.深入了解Windows内存管理机制。3.理解内存分配原理,特别是以页面为单位的虚拟内存分配方法。4.掌握页式虚拟存储技术。5.掌握“最不频繁使用淘汰算法”,即LFU页面淘汰算法。二、理论基础1.页式存储管理技术。2.虚拟存储管理技术。三、实验要求1.编写程序实现简单的虚存管理。2.实验具体包括:(1)设计并实现一个虚存管理程序,模拟一个单道程序的页式存储管理,用一个一维数组模拟实存空间,用一个文本文件模拟辅存空间;(2)建立一张一级页表;(3)编写函数随机产生访存请求,访存操作包括

2、读取、写入、执行等三种类型;(4)编写函数响应访存请求,完成虚地址到实地址的定位及读/写/执行操作,同时判断并处理缺页中断;(5)实现LFU页面淘汰算法。3.实验结束提交书面实验报告。收集于网络,如有侵权请联系管理员删除精品文档四、实验环境1.运行Windows操作系统的PC机一台。2.PC机上安装VisualC++6.0开发工具软件。五、实验内容1.建立“Win32ConsoleApplication”工程“vmm”。2.建立“C/C++HeaderFile”头文件“vmm.h”,文件内容参见“程序代码”。3.建立“C++SourceFile”源文件“vmm.c

3、pp”,文件内容参见“程序代码”。4.建立“TextFile”文本文件“vmm_auxMem.txt”,模拟辅存空间,文件内容可以输入任意字符(字符数多于512个)。5.运行程序并认真观察和分析程序的运行结果。七、程序代码头文件“vmm.h”#ifndefVMM_H#defineVMM_H/*模拟辅存的文件路径*/#defineAUXILIARY_MEMORY"vmm_auxMem.txt"/*页面大小(字节)*/#definePAGE_SIZE4/*虚存空间大小(字节)*/#defineVIRTUAL_MEMORY_SIZE(64*4)/*实存空间大小(字节)*

4、/#defineACTUAL_MEMORY_SIZE(32*4)/*总虚页数*/#definePAGE_SUM(VIRTUAL_MEMORY_SIZE/PAGE_SIZE)/*总物理块数*/#defineBLOCK_SUM(ACTUAL_MEMORY_SIZE/PAGE_SIZE)收集于网络,如有侵权请联系管理员删除精品文档/*可读标识位*/#defineREADABLE0x01u/*可写标识位*/#defineWRITABLE0x02u/*可执行标识位*/#defineEXECUTABLE0x04u/*页表项*/typedefstruct{unsignedint

5、blockNum;//物理块号BOOLfilled;//页面装入特征位BYTEproType;//页面保护类型BOOLedited;//页面修改标识unsignedlongauxAddr;//外存地址unsignedlongcount;//页面使用计数器}PageTableItem,*Ptr_PageTableItem;/*访存请求类型*/typedefenum{REQUEST_READ,REQUEST_WRITE,REQUEST_EXECUTE}MemoryAccessRequestType;/*访存请求*/typedefstruct{MemoryAccessR

6、equestTypereqType;//访存请求类型unsignedlongvirAddr;//虚地址BYTEvalue;//写请求的值收集于网络,如有侵权请联系管理员删除精品文档}MemoryAccessRequest,*Ptr_MemoryAccessRequest;/*访存错误代码*/typedefenum{ERROR_READ_DENY,//该页不可读ERROR_WRITE_DENY,//该页不可写ERROR_EXECUTE_DENY,//该页不可执行ERROR_INVALID_REQUEST,//非法请求类型ERROR_OVER_BOUNDARY,//地

7、址越界ERROR_FILE_OPEN_FAILED,//文件打开失败ERROR_FILE_CLOSE_FAILED,//文件关闭失败ERROR_FILE_SEEK_FAILED,//文件指针定位失败ERROR_FILE_READ_FAILED,//文件读取失败ERROR_FILE_WRITE_FAILED//文件写入失败}ERROR_CODE;/*产生访存请求*/voiddo_request();/*响应访存请求*/voiddo_response();/*处理缺页中断*/voiddo_page_fault(Ptr_PageTableItem);/*LFU页面替换*

8、/void

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。