欢迎来到天天文库
浏览记录
ID:51037480
大小:200.56 KB
页数:16页
时间:2020-03-17
《页面置换算法模拟——OPT、FIFO和LRU算法.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、操作系统实验报告页面置换算法模拟——OFT、FIFO和LRU算法班级:2013级软件工程1班学号:XXX姓名:萧氏一郎数据结构说明:Memery[10]物理块中的页码Page[100]页面号引用串Temp[100][10]辅助数组Voidprint(unsignedintt)辅助函数ViodFIFO()先进先出页面置换算法ViodLRU()最近最久未使用置换换算法ViodOPT()最佳置换算法流程图:开始NONONOYesYesYes结束页号序列载完?根据选择的置换算法完成号存在物理块中引用编号大于物理块数将页号放入物理地址中编号载入序列号,从第0个得到页号源代码:#include<
2、stdio.h>#include/*全局变量*/intmSIZE;/*物理块数*/intpSIZE;/*页面号引用串个数*/staticintmemery[10]={0};/*物理块中的页号*/staticintpage[100]={0};/*页面号引用串*/staticinttemp[100][10]={0};/*辅助数组*//*置换算法函数*/voidFIFO();voidLRU();voidOPT();/*辅助函数*/voidprint(unsignedintt);voiddesignBy();voiddownload();voidmDelay(unsign
3、edintDelay);/*主函数*/voidmain(){inti,k,code;printf("请输入物理块的个数(M<=10):");scanf("%d",&mSIZE);printf("请输入页面号引用串的个数(P<=100):");scanf("%d",&pSIZE);puts("请依次输入页面号引用串(连续输入,无需隔开):");for(i=0;i4、E)&&(i<20*(k+1));i++){if(((i+1)%20==0)5、6、(((i+1)%20)&&(i==pSIZE-1)))printf("%d",page[i]);elseprintf("%d",page[i]);}}printf("***********************");printf("*请选择页面置换算法:ttt*");printf("*-----------------------------------------*");printf("*1.先进先出(FIFO)2.最近最久未使用(LRU)*");printf("*3.最佳(7、OPT)4.退出*");printf("***********************");printf("请选择操作:[]bb");scanf("%d",&code);switch(code){case1:FIFO();break;case2:LRU();break;case3:OPT();break;case4:system("cls");//system("color0A");exit(0);default:printf("输入错误,请重新输入:");}printf("按任意键重新选择置换算法:>>>");getch();}while(code!=4);getch(8、);}/*载入数据*/voiddownload(){printf("Finish.载入成功!");}/*设置延迟*/voidmDelay(unsignedintDelay){unsignedinti;for(;Delay>0;Delay--){for(i=0;i<124;i++){printf("b");}}}/*显示设计者信息*/voidprint(unsignedintt){inti,j,k,l;intflag;for(k=0;k<=(pSIZE-1)/20;k++){for(i=20*k;(i9、0==0)10、11、(((i+1)%20)&&(i==pSIZE-1)))printf("%d",page[i]);elseprintf("%d",page[i]);}for(j=0;j=j)printf("12、%d13、",temp[i][j]);elseprintf("14、15、");}for(i=mSIZE+20*k;(i
4、E)&&(i<20*(k+1));i++){if(((i+1)%20==0)
5、
6、(((i+1)%20)&&(i==pSIZE-1)))printf("%d",page[i]);elseprintf("%d",page[i]);}}printf("***********************");printf("*请选择页面置换算法:ttt*");printf("*-----------------------------------------*");printf("*1.先进先出(FIFO)2.最近最久未使用(LRU)*");printf("*3.最佳(
7、OPT)4.退出*");printf("***********************");printf("请选择操作:[]bb");scanf("%d",&code);switch(code){case1:FIFO();break;case2:LRU();break;case3:OPT();break;case4:system("cls");//system("color0A");exit(0);default:printf("输入错误,请重新输入:");}printf("按任意键重新选择置换算法:>>>");getch();}while(code!=4);getch(
8、);}/*载入数据*/voiddownload(){printf("Finish.载入成功!");}/*设置延迟*/voidmDelay(unsignedintDelay){unsignedinti;for(;Delay>0;Delay--){for(i=0;i<124;i++){printf("b");}}}/*显示设计者信息*/voidprint(unsignedintt){inti,j,k,l;intflag;for(k=0;k<=(pSIZE-1)/20;k++){for(i=20*k;(i9、0==0)10、11、(((i+1)%20)&&(i==pSIZE-1)))printf("%d",page[i]);elseprintf("%d",page[i]);}for(j=0;j=j)printf("12、%d13、",temp[i][j]);elseprintf("14、15、");}for(i=mSIZE+20*k;(i
9、0==0)
10、
11、(((i+1)%20)&&(i==pSIZE-1)))printf("%d",page[i]);elseprintf("%d",page[i]);}for(j=0;j=j)printf("
12、%d
13、",temp[i][j]);elseprintf("
14、
15、");}for(i=mSIZE+20*k;(i
此文档下载收益归作者所有