欢迎来到天天文库
浏览记录
ID:55135033
大小:26.50 KB
页数:6页
时间:2020-04-28
《操作系统实验(四)实验报告--虚拟内存.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、操作系统实验(四)虚拟内存1、实验题目页面置换算法模拟——OPT、FIFO和LRU算法2、实验目的了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法,如最佳(Optimal)置换算法、先进先出(FisrtInFirstOut)置换算法和最近最久未使用(LeastRecentlyUsed)置换算法3、实验内容1)OPT算法:需要发生页面置换时,算法总是选择在将来最不可能访问的页面进行置换。2)FIFO算法:算法总是选择在队列中等待时间最长的页面进行置换。3)LRU算法:如果某一个页面被访问了,它很可能还要
2、被访问;相反,如果它长时间不被访问,那么,在最近未来是不大可能被访问的。4、程序代码#include#include#include#include#defineL30///页面走向长度最大为30usingnamespacestd;intM=4;///内存块structP///定义一个结构体{intnum,time;}p[30];intInput(intm,Pp[L])///打印页面走向状态{m=30;inti,j;j=time(NULL);
3、///取时钟时间srand(j);///以时钟时间x为种子,初始化随机数发生器cout<<"页面走向:";for(i=0;i4、cout<5、age[i].time)e=page[i].time;i++;}for(i=0;i6、/当前页面再次被访问时循环结束elsecount++;///否则count+1}returncount;///返回count的值}intmain(){intc=1;intm=0,t=0;floatn=0;///缺页次数m=Input(m,p);///调用input函数,返回m值M=4;P*page=newP[M];///dowhile(c==17、8、c==29、10、c==3){inti=0;for(i=0;i11、out<<"1:FIFO页面置换"<>c;if(c==1)///FIFO页面置换///FIFO();{n=0;cout<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、i].numcout<<""<
4、cout<5、age[i].time)e=page[i].time;i++;}for(i=0;i6、/当前页面再次被访问时循环结束elsecount++;///否则count+1}returncount;///返回count的值}intmain(){intc=1;intm=0,t=0;floatn=0;///缺页次数m=Input(m,p);///调用input函数,返回m值M=4;P*page=newP[M];///dowhile(c==17、8、c==29、10、c==3){inti=0;for(i=0;i11、out<<"1:FIFO页面置换"<>c;if(c==1)///FIFO页面置换///FIFO();{n=0;cout<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、i].numcout<<""<
5、age[i].time)e=page[i].time;i++;}for(i=0;i6、/当前页面再次被访问时循环结束elsecount++;///否则count+1}returncount;///返回count的值}intmain(){intc=1;intm=0,t=0;floatn=0;///缺页次数m=Input(m,p);///调用input函数,返回m值M=4;P*page=newP[M];///dowhile(c==17、8、c==29、10、c==3){inti=0;for(i=0;i11、out<<"1:FIFO页面置换"<>c;if(c==1)///FIFO页面置换///FIFO();{n=0;cout<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、i].numcout<<""<
6、/当前页面再次被访问时循环结束elsecount++;///否则count+1}returncount;///返回count的值}intmain(){intc=1;intm=0,t=0;floatn=0;///缺页次数m=Input(m,p);///调用input函数,返回m值M=4;P*page=newP[M];///dowhile(c==1
7、
8、c==2
9、
10、c==3){inti=0;for(i=0;i11、out<<"1:FIFO页面置换"<>c;if(c==1)///FIFO页面置换///FIFO();{n=0;cout<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、i].numcout<<""<
11、out<<"1:FIFO页面置换"<>c;if(c==1)///FIFO页面置换///FIFO();{n=0;cout<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、i].numcout<<""<
12、i].numcout<<""<
此文档下载收益归作者所有