欢迎来到天天文库
浏览记录
ID:57650920
大小:16.65 KB
页数:5页
时间:2020-08-30
《先进先出页面置换算法.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、先进先出页面置换算法#include#include#definemax30typedefstruct{ intvisit_number;//要访问的页面号}nu,number[max];int*memoryblock;//主存中有三个主存块,可装三个页面voidinit_memoryblock(intn)//初始化主存块{ inti=1; memoryblock=(int*)malloc(sizeof(int));//分配空间 for(i=1;i<=n;i++) {
2、 memoryblock[i]=-1;//开始时候没有页面进入,初始为-1 }}voidinit_visitpage(numbernum,intn)//n表示要访问的页面的个数{ inti=0; intj=3; printf("输入要访问的页面号:"); for(i=1;i<=n;i++) { scanf("%d",&num[i].visit_number); } printf("");}voidFIFO_page_dispatch(num
3、bernum,intn)//FIFO页面调度算法{ inti,j=3,temp,counter=0; for(i=1;i<=n;i++) { //----------------------------页面在主存中------------------------------- for(j=3;j>=1;j--) { if(num[i].visit_number==memoryblock[j])//////要访问的页面在主存中
4、 { printf("(%d)页面在主存块中,换出和换进都是%d号页面:",i,memoryblock[j]); } break; } //----------------------------------------------------------------------- //---------------
5、-------------页面不在主存中----------------------------- if(num[i].visit_number!=memoryblock[1]&&num[i].visit_number!=memoryblock[2]&&num[i].visit_number!=memoryblock[3])/////////////[ 1 ] /*内存中没有要访问的页面,中断*/ { if(memorybloc
6、k[1]!=-1&&memoryblock[2]!=-1&&memoryblock[3]!=-1) { temp=memoryblock[3]; memoryblock[3]=memoryblock[2]; memoryblock[2]=memoryblock[1]; memoryblock[1]=num[i].visi
7、t_number; //--------------------------------- printf("(%d)——页面发生置换:",i); printf("换出(%d号)页面—",temp); printf("换进(%d)号页面",num[i].visit_number); counter++;
8、
此文档下载收益归作者所有