内容发布更新时间 : 2025/1/1 6:57:36星期一 下面是文章的全部内容请认真阅读。
}
page[j].time=j;
if(m_iFifo==0) //FIFO页面置换
{ 换,缺页数加一
float n=0;
//记录缺页数
int i=0;
CString str3,tmp3; str3=\
m_yemian.SetWindowText(_T(str3)); while(i
page[t].num=p[i].num/10;//如果没有找到相同的页,则进行页面替 //—————————— tmp3=\
m_yemian.GetWindowText(_T(str3)); for(int i=0;i } else { tmp3.Format(\ str3+=tmp3; } str3+=\ m_yemian.SetWindowText(_T(str3)); //—————————— t=(++t)%N; } } 16 } MZL=1-n/M; if(m_iFifo==1) //LRU页面置换 { int p2; float n=0;//记录缺页数 int i=0; int t1=t=0; CString str3,tmp3; str3=\ m_yemian.SetWindowText(_T(str3)); while(i int k; k=Search(p[i].num,page,N); if(k>=0) { } else { if(t1 n++; page[t].num=p[i].num/10;//如果没有找到相同的页,则进行页++t1; t++; page[t].time=0; //—————————— tmp3=\ m_yemian.GetWindowText(_T(str3)); for(int i=0;i if(page[i].num==-1) { 17 page[k].time=0; for(p2=0;p2 if(p2!=k) page[p2].time++; 面替换,缺页数加一 } { } else { } tmp3.Format(\str3+=tmp3; tmp3.Format(\str3+=tmp3; str3+=\ m_yemian.SetWindowText(_T(str3)); //—————————— else{ } n++; t=Max(page,N); page[t].num=p[i].num/10; page[t].time=0; //—————————— tmp3=\ m_yemian.GetWindowText(_T(str3)); for(int i=0;i if(page[i].num==-1) { } else { } str3+=\ m_yemian.SetWindowText(_T(str3)); tmp3.Format(\str3+=tmp3; tmp3.Format(\str3+=tmp3; //—————————— for(p2=0;p2 18 } } } i++; MZL=1-n/M; if(m_iFifo==2)//OPT页面置换 { int i=0; float n=0;//记录缺页数 int t=0,t1=0; CString str3,tmp3; str3=\ m_yemian.SetWindowText(_T(str3)); while(i if(Search(p[i].num,page,N)>=0)i++; else { if(t1 n++; ++t1; t++; i++; //—————————— tmp3=\ m_yemian.GetWindowText(_T(str3)); for(int i=0;i if(page[i].num==-1) { } else { } 19 page[t].num=p[i].num/10;//如果没有找到相同的页,则进行页面替换,缺页数加1 tmp3.Format(\str3+=tmp3; tmp3.Format(\str3+=tmp3; } } } str3+=\ m_yemian.SetWindowText(_T(str3)); //—————————— else if(t1>=N) { } int temp=-1,cn; for(t=0;t if(temp page[cn].num=p[i].num/10; n++; //—————————— tmp3=\ m_yemian.GetWindowText(_T(str3)); for(int i=0;i if(page[i].num==-1) { } else { } str3+=\ m_yemian.SetWindowText(_T(str3)); tmp3.Format(\str3+=tmp3; tmp3.Format(\str3+=tmp3; { } cn=t;//最远的页面号 temp=Compfu(page,i,t,p);//下次命中经历的页面计数 //—————————— else break; MZL=1-n/M; 20