电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

操作系统实验4请求分页存储管理模拟实验

操作系统实验4请求分页存储管理模拟实验_第1页
1/11
操作系统实验4请求分页存储管理模拟实验_第2页
2/11
操作系统实验4请求分页存储管理模拟实验_第3页
3/11
实验四 请求分页存储管理模拟实验 一:实验目的 通过对页面、页表、地址转换和页面置换过程的模拟,加深对请求分页存储管理系统的原理和实现技术的理解。 二:实验内容 假设每个页面可以存放 10 条指令,分配给进程的存储块数为 4。 用 C 语言或 Pas cal 语言模拟一进程的执行过程。设该进程共有 320 条指令,地址空间为 32 个页面,运行前所有页面均没有调入内存。模拟运行时,如果所访问的指令已经在内存,则显示其物理地址,并转下一条指令;如果所访问的指令还未装入内存,则发生缺页,此时需要记录缺页产生次数,并将相应页面调入内存,如果 4 个内存块已满,则需要进行页面置换。最后显示其物理地址,并转下一条指令。在所有指令执行完毕后,显示进程运行过程中的缺页次数和缺页率。 页面置换算法:分别采用 OPT、FIFO、LRU 三种算法。 进程中的指令访问次序按如下原则生成: 50%的指令是顺序执行的。 25%的指令是均匀分布在低地址部分。 25%的指令是均匀分布在高地址部分。 三:实验类别 分页存储管理 四:实验类型 模拟实验 五:主要仪器 计算机 六:结果 OPT: LRU: FIFO: 七:程序 # include # include # include # define blocknum 4//页面尺寸大小 int m; //程序计数器,用来记录按次序执行的指令对应的页号 static int num[320]; //用来存储320 条指令 typedef struct BLOCK //声明一种新类型--物理块类型 { int pagenum; //页号 int accessed; //访问量,其值表示多久未被访问 }BLOCK; BLOCK block[blocknum]; //定义一大小为 8 的物理块数组 void init() //程序初始化函数,对 block 初始化 { for(int i=0;i

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

操作系统实验4请求分页存储管理模拟实验

确认删除?
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群