欢迎来到天天文库
浏览记录
ID:41628730
大小:117.05 KB
页数:15页
时间:2019-08-29
《实验三页面置换算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、操作系统实验报告班级:姓名:学号:实验三:页面置换算法一、实验冃的1、熟悉内存分页管理策略。2、编写OPT、FIFO、LRU,LFU四种置换算法并模拟实现。3、锻炼知识的运用能力和实践能力。二、实验内容设计主界面,输入一串系列模拟页面请求,实现以下算法:1)最佳置换算法(OPT):将以后永不使用的或许是在最长(未来)时间内不再被访问的页面换出。2)先进先出算法(FIFO):淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。3)最近最久未使用算法(LRU):淘汰故近最久未被使用的页面。4)最不经常使用算法(LFU)三、代码及运行结果分析#
2、include#includeintmSIZE;intpSIZE;staticintmemery[10]={0};staticintpage[100]={0};staticinttemp[100][10]={0};voidFIFO();voidLRU();voidOPT();voidprint(unsignedintt);voidread();voidmDelay(unsignedintDelay);intmain(){inti,k,code;printf(”请输入物理块的个数(M<=10):n);scanf(n%
3、dn,&mSIZE);printfC*请输入页面号引用串的个数(Pv=100):”);scanf(”%(T;&pSIZE);puts"请依次输入页面号引用串:");for(i=0;i4、5、(((i+1)%20)&&(i=pSIZE・1)))printf(H%d6、,',page[i]);elseprintf(n%dn,page[i]);}}printf(Hn);printf(”*请选择页面置换算法:ttt*rT);printf(^*『);printf(n*1.先进先出(FIFO)2•最近最久未使用(LRU)"T);printf(n*3•最佳(OPT)4•退出*n);printf(Hn);printf(n请选择操作:[]bbn);scanf(n%dn,&code);switch(code)case1:FIFO();break;case2:LRU();break;case3:OPT();b7、reak;case4:system(nclsn);exit(O);default:printf(n输入错误,请重新输兀”);}printf(n按任意键重新选择置换算法:>>>”);getchar();}while(code!=4);getchar();voidread()inti;for(i=0;i<51;i++)printf(nbn);for(i=0;iv50;i++){mDelay((pSIZE+mSIZE)/2);printf(H>H);}printfC*获取成功,按任意键进入置换算法选择界面:J;getchar();}voidmDelay(u8、nsignedintDelay){unsignedinti;for(;Delay>0;Delay—){for(i=0;i<124;i++){printf(HbH);}}}voidprint(unsignedintt){intflag;for(k=0;k<=(pSIZE-1)/20;k++){for(i=20*k;(i9、10、(((i+1)%20)&&(i==pSIZE-1)))printf(n%dn,page[i]);elseprintf(”%dn,page[i])11、;}for(j=0;j=j)printf(”12、%d13、”,temp[i][j]);elseprint”14、}for(i二mSIZE+20*k;(ivpSIZE)&&(iv20*(k+l));i++){for(flag=0,l=0;l15、%drtemp[i16、][j]);}if(i%20==0)continue;printf(Hn);}}print
4、
5、(((i+1)%20)&&(i=pSIZE・1)))printf(H%d
6、,',page[i]);elseprintf(n%dn,page[i]);}}printf(Hn);printf(”*请选择页面置换算法:ttt*rT);printf(^*『);printf(n*1.先进先出(FIFO)2•最近最久未使用(LRU)"T);printf(n*3•最佳(OPT)4•退出*n);printf(Hn);printf(n请选择操作:[]bbn);scanf(n%dn,&code);switch(code)case1:FIFO();break;case2:LRU();break;case3:OPT();b
7、reak;case4:system(nclsn);exit(O);default:printf(n输入错误,请重新输兀”);}printf(n按任意键重新选择置换算法:>>>”);getchar();}while(code!=4);getchar();voidread()inti;for(i=0;i<51;i++)printf(nbn);for(i=0;iv50;i++){mDelay((pSIZE+mSIZE)/2);printf(H>H);}printfC*获取成功,按任意键进入置换算法选择界面:J;getchar();}voidmDelay(u
8、nsignedintDelay){unsignedinti;for(;Delay>0;Delay—){for(i=0;i<124;i++){printf(HbH);}}}voidprint(unsignedintt){intflag;for(k=0;k<=(pSIZE-1)/20;k++){for(i=20*k;(i9、10、(((i+1)%20)&&(i==pSIZE-1)))printf(n%dn,page[i]);elseprintf(”%dn,page[i])11、;}for(j=0;j=j)printf(”12、%d13、”,temp[i][j]);elseprint”14、}for(i二mSIZE+20*k;(ivpSIZE)&&(iv20*(k+l));i++){for(flag=0,l=0;l15、%drtemp[i16、][j]);}if(i%20==0)continue;printf(Hn);}}print
9、
10、(((i+1)%20)&&(i==pSIZE-1)))printf(n%dn,page[i]);elseprintf(”%dn,page[i])
11、;}for(j=0;j=j)printf(”
12、%d
13、”,temp[i][j]);elseprint”
14、}for(i二mSIZE+20*k;(ivpSIZE)&&(iv20*(k+l));i++){for(flag=0,l=0;l15、%drtemp[i16、][j]);}if(i%20==0)continue;printf(Hn);}}print
15、%drtemp[i
16、][j]);}if(i%20==0)continue;printf(Hn);}}print
此文档下载收益归作者所有