Clock及改进Clock置换算法实现doc.docx
《Clock及改进Clock置换算法实现doc.docx》由会员分享,可在线阅读,更多相关《Clock及改进Clock置换算法实现doc.docx(15页珍藏版)》请在冰豆网上搜索。
Clock及改进Clock置换算法实现doc
Clock-及改进-Clock置换算法实现
操作系统课程设计报告
学院:
学生姓名:
__
学号:
题目:
Clock及改进Clock置换算法实现
指导教师:
(1)Clock置换算法:
当采用简单Clock算法是只需为每页设置一位访问位,再将内存中的所用页面都通过链接指针链接成一个循环队列。
当某页被访问时,其访问位被置1。
置换算法在选择一页淘汰时,只需检查页的访问位。
如果是0,就选择该页换出;若为1,则重新将他置0,暂不换出,而给该页第二次驻留内存的机会,在按照FIFO算法检查下一个页面。
当检查到队列中的最后一个页面是,若其访问位仍为1,则再返回到队首去检查第一个页面。
(2)算法流程图
(3)改进型Clock置换算法
在将一个页面换出时,如果该页已被修改过,便须将该页重新写回到磁盘上;但如果该页未被修改过,则不必将它拷回磁盘。
在改进型Clock算法中,除须考虑页面的使用情况外,还须在增加一个因素,即置换代价,这样页面换出时,既要是未使用过的页面,又要是未被修改过的页面。
把同时满足这两个条件的页面作为首选淘汰的页面。
由访问位A和修改位M可以组合成下面四种类型的页面:
1类(A=0,M=0):
表示该页最近既未被访问,又未被修改,是最佳淘汰页。
2类(A=0,M=0):
表示该页最近未被访问,但已被修改,并不是很好的淘汰页。
3类(A=1,M=0):
表示该页最近已被访问,但未被修改,该页有可能在被访问。
4类(A=1,M=1):
表示该页最近已被访问且被修改,该页可能再被访问。
,
执行过程:
①从查寻指针当前位置起扫描内存分页循环队列,选择A=0且M=0的第一个页面淘汰;若未找到,转②
②开始第二轮扫描,选择A=0且M=1的第一个页面淘汰,同时将经过的所有页面访问位置0;若不能找到,转①
一、程序代码分析
(1)Clock置换算法代码实现
voidCLOCK(intnum){
intj;
if(isInside(num)){
cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}(2)改进Clock置换算法实现voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}(2)改进Clock置换算法实现voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
cout<<"物理块"<
"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}(2)改进Clock置换算法实现voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
}
else
if(count==A){
lost++;
for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}(2)改进Clock置换算法实现voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
if(state[j]==0){
break;
else{
state[j]=0;
j++;
j=j%3;
Inside[j]=Page[num];
state[j]=1;
for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}(2)改进Clock置换算法实现voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}(2)改进Clock置换算法实现voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
Inside[count]=Page[num];
count++;
for(inti=0;icout<<"物理块"<"<}}(2)改进Clock置换算法实现voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}}(2)改进Clock置换算法实现voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
(2)改进Clock置换算法实现
voidLCLOCK(intnum){
if(isInside2(num)){
cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
j=whichpage();
state2[j][0]=1;
for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}}五.程序截图运行截图:六.程序代码#include#includeusingnamespacestd;#defineM2intconstA=4;//内存中存放的页面数intcount=0;intInside[A];intconstPageCount=10;//总的页面数intPage[PageCount];intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置intstate[A];//clock置换算法中,内存中的每个页面号对应的状态intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位doublelost=0.0;//检测页号是否在内存中boolisInside(intnum){for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
五.程序截图
运行截图:
六.程序代码
#include
usingnamespacestd;
#defineM2
intconstA=4;//内存中存放的页面数
intcount=0;
intInside[A];
intconstPageCount=10;//总的页面数
intPage[PageCount];
intinsert=0;//先到先出置换算法fcfo中表示当内存满的时候,新进入的页号放的位置
intsuiji=0;//随机置换算法randchange当内存满的时候,新进入的页号放的位置
intstate[A];//clock置换算法中,内存中的每个页面号对应的状态
intstate2[A][M];//二维数组,第一行第一列为访问位,第一行的第二列为修改位
doublelost=0.0;
//检测页号是否在内存中
boolisInside(intnum){
for(inti=0;iif(Inside[i]==Page[num]){state[i]=1;returntrue;}}returnfalse;}//判断页面是否已经被修改boolchange(){if((rand()%2+1)==1){cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
if(Inside[i]==Page[num]){
state[i]=1;
returntrue;
returnfalse;
//判断页面是否已经被修改
boolchange(){
if((rand()%2+1)==1){
cout<<"该页面被修改"<returntrue;}elsereturnfalse;}//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1boolisInside2(intnum){for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
//用于改进型clock置换算法,检测页号是否在内存中并把访问位和修改位置1
boolisInside2(intnum){
for(inti=0;iif(Inside[i]==Page[num]){if(change()){state2[i][0]=1;state2[i][1]=1;}else{state2[i][0]=1;}returntrue;}}returnfalse;}//用于改进型clock置换算法,判断内存中第几个需要被置换intwhichpage(){intj;for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
if(change()){
state2[i][0]=1;
state2[i][1]=1;
//用于改进型clock置换算法,判断内存中第几个需要被置换
intwhichpage(){
for(j=0;jif(state2[j][0]==0&&state2[j][1]==0){returnj;}}for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
if(state2[j][0]==0&&state2[j][1]==0){
returnj;
for(j=0;jif(state2[j][0]==0&&state2[j][1]==1){returnj;}state2[j][0]=0;}for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
if(state2[j][0]==0&&state2[j][1]==1){
state2[j][0]=0;
for(j=0;jstate2[j][0]=0;}returnwhichpage();} //简单Clock置换算法voidCLOCK(intnum){intj;if(isInside(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
returnwhichpage();
//简单Clock置换算法
cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}elseif(count==A){lost++;for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(j=0;jif(state[j]==0){break;}else{state[j]=0;}j++;j=j%3;}Inside[j]=Page[num];state[j]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}}//改进型clock置换算法voidLCLOCK(intnum){intj;if(isInside2(num)){cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
//改进型clock置换算法
cout<<"命中"<for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}elseif(count==A){lost++;j=whichpage();Inside[j]=Page[num];state2[j][0]=1;for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}else{Inside[count]=Page[num];count++;for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"物理块"<"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
"<}}intmain(){charch;cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
intmain(){
charch;
cout<<"默认的页号为"<for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;iPage[i]=rand()%9+1;cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
Page[i]=rand()%9+1;
cout<}cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
cout<while(1){cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
while
(1){
cout<<"------------1.Clock置换算法(CLOCK)-----"<cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
cout<<"------------2.改进型Clock置换算法--------"<cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
cout<<"------------0.退出-----------------------"<cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
cout<<"-------------输入进行选择----------------"<cin>>ch;switch(ch){case'1':{lost=0;count=0;for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
cin>>ch;
switch(ch){
case'1':
{
lost=0;
count=0;
for(intm=0;mstate[m]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
state[m]=0;
for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
Inside[j]=0;
for(inti=0;icout<<"读入Page["<CLOCK(i);}cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
cout<<"读入Page["<
CLOCK(i);
cout<<"\n页面访问次数"<}break;case'2':{lost=0;count=0;for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
}break;
case'2':
for(intm=0;mfor(intn=0;n<2;n++)state2[m][n]=0;}for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(intn=0;n<2;n++)
state2[m][n]=0;
for(intj=0;jInside[j]=0;}for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
for(inti=0;icout<<"读入Page["<LCLOCK(i);}cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
LCLOCK(i);
cout<<"\n页面访问次数"<}break;case'0':{exit(0);}break;}}return0;}
case'0':
exit(0);
return0;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1