文档详情

存储管理实验报告一,分区存储管理模拟,二,请求页式存储管理模拟.doc

发布:2017-11-02约6.93千字共23页下载文档
文本预览下载声明
存储管理实验报告一,分区存储管理模拟,二,请求页式存储管理模拟 int p; //全局变量p是一共有多少地址流 void chushihua()//初始化函数 { int t; srand(time(0));//随机产生指令序列 p=12+rand()%32; cout地址流序列:; for(int i=0;ip;i++) { t=1+rand()%9; yemianliu[i]=t;//将随机产生的指令数存入页面流 coutt ; } coutendl; } void FIFO(int n) //FIFO算法,n是M的值 { int i; int q=p; int e; int queye=0; int flag; int fifo[32]={0}; while(q--) { flag=0; e=q; for(i=0;in;i++) { if(fifo[i]==yemianliu[q]) { flag=1; break; } } if(flag==0) { int m=n-1; int k=m; while(m--) { fifo[k]=fifo[k-1]; k--; } fifo[0]=yemianliu[e]; queye++; } } coutM=n时FIFO的命中率为:(1-((double)queye/p))*100% } void LRU(int n)//LRU算法 { int i; int q=p; int e; int queye=0; int flag; int flag1,; int y; int lru[32]={0}; while(q--) { flag=0; e=q; for(i=0;in;i++) { if(lru[i]==yemianliu[q]) { flag=1; flag1=i; break; } } if(flag==0) { int m=n-1; ; int k=m; while(m--) { lru[k]=lru[k-1]; k--; } lru[0]=yemianliu[e]; queye++; } else if(flag==1) { y=flag1; while(y--) { lru[flag1]=lru[flag1-1]; flag1--; } lru[0]=yemianliu[e]; } } coutM=n时LRU的命中率为:(1-((double)queye/p))*100%endl; } void main() { chushihua(); for(int i=3;i33;i++) { FIFO(i); LRU(i); } } 报告: ××××大学 计算机科学与工程学院实验报告 实验题目: 请求页式存储管理模拟 课程名称: 计算机操作系统 实验类型:□演示性 □验证性 □操作性 □设计性 □综合性 专业:班级:姓名:学号: 实验日期:2012年5月24日 实验地点:实验学时: 实验成绩: 指导教师签字: 年月日 实验题目: 6 实验要求: 6 一、方案设计 7 1.技术方案: 7 (1)先进先出法(First In First Out): 7 (2)最近最久未使用(Least Recently Used): 7 2.功能设计: 7 (1)chushihua()函数的功能: 7 (2)FIFO()的功能: 7 (3)LRU()的功能: 7 二、结构设计 7 1、数据结构设计 7 2、程序结构设计 7 三、程序设计 8 1.FIFO()函数流程图; 8 2.LRU()函数流程图: 9 四、编码调试 10 主要问题及解决方法: 10 五、实验总结 10 六、程序清单 11 源代码: 11 运行结果: 14 篇二:操作系统-请求页式存储管理实验报告 操作系统 实验三 存储管理实验 班级: 学号: 姓名: 目 录 1. 实验目的 2 2. 实验内容 2 (1) 通过随机数产生一个指令序列,共320条指令 2 (2) 将指令序列变换成为页地址流 2 (3) 计算并输出下述各种算法在不同内存容量下的命中率 2 3. 随机数产生办法 3 环境说明 3 4. 程序设计说明 3 4.1. 全局变量 3 4.2. 随机指令序列的产生 4 4.3. FIFO算法 4 4.4. LRU算法 4 4.5. O
显示全部
相似文档