欢迎来到天天文库
浏览记录
ID:33986620
大小:948.30 KB
页数:18页
时间:2019-03-03
《南京邮电大学实验报告模版2》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验报告(2014/2015学年第一学期)课程名称计算机操作系统实验名称虚拟存储中页面置换算法的模拟实现实验时间2014年12月19日指导单位南京邮电大学指导教师崔衍学生姓名班级学号学院(系)物联网院专业网络工程-18-实验报告实验名称虚拟存储中页面置换算法的模拟实现指导教师崔衍实验类型上机实验实验学时4实验时间2014.12.19一、实验目的和要求目的:通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的技术特点,掌握请求页式存储管理的页面置换算法要求:(1)设计实现下面算法,并输出下述各种算
2、法的命中率。①先进先出的算法(FIFO);②最近最少使用算法(LRR);③最佳淘汰算法(OPT)先淘汰最不常用的页地址。(2)多次反复运行改进后的程序,观察并记录运行结果,并分析原因。二、实验环境(实验设备)Vc++6.0-18-一、实验原理及内容实验三#include#include#include#include#defineBsize4typedefstructBLOCK//声明一种新类型——物理块类型{intpagen
3、um;//页号intaccessed;//访问字段,其值表示多久未被访问}BLOCK;intpc;//程序计数器,用来记录指令的序号intn;//缺页计数器,用来记录缺页的次数staticinttemp[320];//用来存储320条随机数BLOCKblock[Bsize];//定义一大小为4的物理块数组//*************************************************************voidinit();//程序初始化函数intfindExist(intcur
4、page);//查找物理块中是否有该页面intfindSpace();//查找是否有空闲物理块intfindReplace();//查找应予置换的页面voiddisplay();//显示voidsuijishu();//产生320条随机数,显示并存储到temp[320]voidpagestring();//显示调用的页面队列voidOPT();//OPT算法voidLRU();//LRU算法voidFIFO();//FIFO算法//*************************************
5、************************voidinit(){for(inti=0;i6、turni;//检测到内存中有该页面,返回block中的位置}return-1;}//-------------------------------------------------------------intfindSpace(){for(inti=0;i7、------------------intfindReplace(){intpos=0;for(inti=0;iblock[pos].accessed)pos=i;//找到应予置换页面,返回BLOCK中位置}returnpos;}//-------------------------------------------------------------voiddisplay(-18-){for(inti=0;i8、(block[i].pagenum!=-1){printf("%02d",block[i].pagenum);}}cout<>pc;cout<<"******按照要求产生的320个随机数:*******"<
6、turni;//检测到内存中有该页面,返回block中的位置}return-1;}//-------------------------------------------------------------intfindSpace(){for(inti=0;i7、------------------intfindReplace(){intpos=0;for(inti=0;iblock[pos].accessed)pos=i;//找到应予置换页面,返回BLOCK中位置}returnpos;}//-------------------------------------------------------------voiddisplay(-18-){for(inti=0;i8、(block[i].pagenum!=-1){printf("%02d",block[i].pagenum);}}cout<>pc;cout<<"******按照要求产生的320个随机数:*******"<
7、------------------intfindReplace(){intpos=0;for(inti=0;iblock[pos].accessed)pos=i;//找到应予置换页面,返回BLOCK中位置}returnpos;}//-------------------------------------------------------------voiddisplay(-18-){for(inti=0;i8、(block[i].pagenum!=-1){printf("%02d",block[i].pagenum);}}cout<>pc;cout<<"******按照要求产生的320个随机数:*******"<
8、(block[i].pagenum!=-1){printf("%02d",block[i].pagenum);}}cout<>pc;cout<<"******按照要求产生的320个随机数:*******"<
此文档下载收益归作者所有