计算机操作系统储存管理实验报告

上传人:cn****1 文档编号:430366884 上传时间:2022-11-27 格式:DOC 页数:18 大小:601KB
返回 下载 相关 举报
计算机操作系统储存管理实验报告_第1页
第1页 / 共18页
计算机操作系统储存管理实验报告_第2页
第2页 / 共18页
计算机操作系统储存管理实验报告_第3页
第3页 / 共18页
计算机操作系统储存管理实验报告_第4页
第4页 / 共18页
计算机操作系统储存管理实验报告_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《计算机操作系统储存管理实验报告》由会员分享,可在线阅读,更多相关《计算机操作系统储存管理实验报告(18页珍藏版)》请在金锄头文库上搜索。

1、.软件学院综合性 、设计性实验报告专业: java 课程名称学号 -姓名实验地点项目名称一、实验目的年级 / 班级: 2012 级2013 2014 学年第一学期计算机操作系统指导教师1228524012- 王宇菲过街楼 B 区实验时间2014-12-23储存管理实验类型综合性 / 设计性通过请求页式存储管理中页面置换算法模拟程序,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。二、实验仪器或设备实验机房 pc 电脑三、总体设计 (设计原理 、设计方案及流程等 )1.通过随机数产生一个指令序列,共 320 条指令 ,指令的地址按下述原则生产:50的指令是顺序执行的;25 的指令是均

2、匀分布在前地址部分;25 的指令是均匀分布在后地址部分。2.将指令序列变换成为页地址流设页面大小为1K ;用户内存容量为4 页到 32 页;用户虚存容量为32K 。在用户虚存中,按每 K 存放 10 条指令排列虚存地址,即 320 条指令在虚存中的存放方式为 :第 0 条至第 9 条指令为第0 页;第 10 条至 19 条指令为第1 页; 第 310条至 319 条指令为第31 页 。专业 .专注.3.计算并输出下述各种算法在不同内存容量下的命中率。(1) 先进先出算法 (FIFO)(2) 最近最少使用算法 ( LRU)(3) 最佳使用算 ( OPT)命中率 页面失效次数页地址流长度本实验中

3、,页地址流长度为320 ,页面失效次数为每次访问相应指令时,该指令所对应的页不在内存的次数。关于随机数的产生办法。首先要初始化设置随机数,产生序列的开始点,例如 ,通过下列语句实现:srand ( 400 );(1) 计算随机数 ,产生 320 条指令序列m 160 ;for (i 0; i 80; i+ j i 4;a j m ;a j+1 m+1 ;a j+2 aj1.0 rand( )/32767;a j+3 aj+2+1m aj+3+(319-aj+3) 1.0 rand( )/32767;专业 .专注.(2) 将指令序列变换成为页地址流for ( k 0; k 320 ; k+) p

4、t ak/10 ; pd= ak%10 ;(3) 计算不同算法的命中率rate 1-1.0 U/320;其中 U 为缺页中断次数, 320 是页地址流长度。(4) 输出格式kfifo1ru40.230.25321.01.0四、实验步骤 (包括主要步骤 、代码分析等 )1 代码如下#include#include#include#include#defineMyprintfprintf(|-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-|n)/*专业 .专注.表格控制 */#define bsize 4/ 物理块大小#define psize 16/ 进程大小typedef s

5、truct pageint num;/* 记录页面号 */int time;/* 记录调入内存时间 */Page;/*页面逻辑结构 ,结构为方便算法实现设计 */Page bbsize;/* 内存单元数 */int cbsizepsize;/* 暂保存内存当前的状态 :缓冲区 */int queue100;/* 记录调入队列 */int K;/* 调入队列计数变量 */int phbbsize=0;/ 物理块标号int propsize=0;/ 进程序列号int flagbsize = 0;/ 进程等待次数 (存放最久未被使用的进程标志 )int i = 0, j = 0,k = 0;/i 表

6、示进程序列号 ,j 表示物理块号int m = -1, n = -1;/ 物理块空闲和进程是否相同判断标志int max = -1,maxflag = 0; /标记替换物理块进程下标int count = 0;/ 统计页面缺页次数/*/*/随机产生序列号函数专业 .专注./*int* build()printf( 随机产生一个进程序列号为: n);int i = 0;for(i=0; ipsize; i+)proi = 10*rand()/(RAND_MAX+1)+1;printf(%d,proi);printf(n);return(pro);/*/ 查找空闲物理块/*int searchpb

7、()for( j=0; jbsize; j+)if(phb j = 0)专业 .专注.m = j;return m;break;return -1;/*/ 查找相同进程/*int searchpro()for( j = 0; j bsize; j+)if(phb j = proi)n = j;return j;return -1;专业 .专注./*/ 初始化内存/*void empty()for(i=0;ibsize;i+)phbi=0;count=0;/ 计数器置零/*/ 先进先出页面置换算法/*void FIFO()for(i = 0; ipsize; i+)m=searchpb();n=searchpro();/ 找 flag 值最大的for(j = 0; j maxflag)专业 .专注.maxflag = flagj;max = j;if(n = -1)/ 不存在相同进程if(m != -1)/ 存在空闲物理块phbm = proi;/ 进程号填入该空闲物理块count+;flagm = 0;for(j = 0;j = m; j+)flag j+;m = -1;else/ 不存在空闲物理块phbmax = proi;flagmax = 0;专业 .专注.fo

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号