欢迎来到天天文库
浏览记录
ID:38949627
大小:39.00 KB
页数:6页
时间:2019-06-22
《操作系统实验(四)实验报告虚拟内存》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
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);///取时钟时间srand(j);///以时钟时间x为种子,初始化随机数发生器cout<<"
3、页面走向:";for(i=0;i4、ge=page1;for(inti=0;i5、其块号return-1;}intCount(P*page1,inti,intt,Pp[L])///记录当前内存块中页面离下次使用间隔长度用于OPT算法{P*page=newP[M];page=page1;intcount=0;for(intj=i;j6、t(m,p);///调用input函数,返回m值M=4;P*page=newP[M];///dowhile(c==17、8、c==29、10、c==3){inti=0;for(i=0;i>c;if(c==1)///FIFO页面置换///FIFO();{n=0;c11、out<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、内存块i++;///指向下一个页面}}}cout<<"缺页次数:"
4、ge=page1;for(inti=0;i5、其块号return-1;}intCount(P*page1,inti,intt,Pp[L])///记录当前内存块中页面离下次使用间隔长度用于OPT算法{P*page=newP[M];page=page1;intcount=0;for(intj=i;j6、t(m,p);///调用input函数,返回m值M=4;P*page=newP[M];///dowhile(c==17、8、c==29、10、c==3){inti=0;for(i=0;i>c;if(c==1)///FIFO页面置换///FIFO();{n=0;c11、out<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、内存块i++;///指向下一个页面}}}cout<<"缺页次数:"
5、其块号return-1;}intCount(P*page1,inti,intt,Pp[L])///记录当前内存块中页面离下次使用间隔长度用于OPT算法{P*page=newP[M];page=page1;intcount=0;for(intj=i;j6、t(m,p);///调用input函数,返回m值M=4;P*page=newP[M];///dowhile(c==17、8、c==29、10、c==3){inti=0;for(i=0;i>c;if(c==1)///FIFO页面置换///FIFO();{n=0;c11、out<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、内存块i++;///指向下一个页面}}}cout<<"缺页次数:"
6、t(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;i>c;if(c==1)///FIFO页面置换///FIFO();{n=0;c
11、out<<"FIFO算法页面置换情况如下:"<=0)///当前页面在内存中{cout<12、内存块i++;///指向下一个页面}}}cout<<"缺页次数:"
12、内存块i++;///指向下一个页面}}}cout<<"缺页次数:"
此文档下载收益归作者所有