操作系统 FIFO页面置换算法

时间:2026-01-22

操作系统 FIFO页面置换算法 C++代码

#include<iostream>

using namespace std;

int pagenum=0; //内存的页面数

int total=0; //要访问的叶面总数

int lacknumber=0; //缺页的总数

int main()

{

cout<<" ┏━━━━━━━━━━━━━━━━━━━━━━━━┓"<<endl; cout<<" ┃ FIFO页面置换调度算法 ┃"<<endl; cout<<" ┣━━━━━━━━━━━━━━━━━━━━━━━━┫"<<endl;

int array[1][20]; //0代表没有内容

for(int y=0;y<2;y++)

for(int x=0;x<20;x++)

{array[y][x]=-1;}

int seque[20]={0};

cout<<"请输入内存的页面数:";

cin>>pagenum;

cout<<"请输入页面的访问顺序(输入-1结束):";

for(int i=0;i<20;i++)

{

int num;

cin>>num;

if(num!=-1)

{

seque[i]=num;

total++;

}

else

{seque[i]=num;

break;

}

}

cout<<"总的页面数为"<<total<<endl; //总的页面数

int i=0;

for(i=0;i<pagenum;i++) //刚开始置换前pagenum个空页面

{

if(i<pagenum)

{

array[0][i]=seque[i];

cout<<"页面"<<seque[i]<<"进入内存"<<endl;

cout<<"缺页 此时页面内容为";

for(int j=0;j<pagenum;j++)

{cout<<array[0][j]<<" ";}

操作系统 FIFO页面置换算法 C++代码

cout<<"(-1代表没有内容)"<<endl;

}

cout<<endl;

}

int kk=0;

for(i=pagenum;i<total;i++)

{

int flag=0;

for(int k=0;k<pagenum;k++)

{

if(array[0][k]==seque[i])

{flag=1;break;}

}

cout<<endl;

if(flag==1)

{ cout<<"页面"<<seque[i]<<"进入内存"<<endl;

cout<<"此时页面内容为";

for(int j=0;j<pagenum;j++)

{cout<<array[0][j]<<" ";}

}

cout<<endl;

if(flag==0)

{

int tem=array[0][kk];

array[0][kk]=seque[i];

cout<<"页面"<<seque[i]<<"进入内存"<<endl;

cout<<"缺页 页面"<<tem<<"被替换"<<endl;

cout<<"此时页面内容为";

for(int j=0;j<pagenum;j++)

{cout<<array[0][j]<<" ";}

cout<<endl;

kk++;

lacknumber++; //缺页数

if(kk==pagenum)

{kk=0;}

}

}

lacknumber=pagenum+lacknumber;

cout<<endl;

cout<<"缺页率="<<lacknumber<<"/"<<total<<"="<<float(lacknumber)/float(total)<<endl; system("pause");

}

操作系统 FIFO页面置换算法.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:4.9 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:19元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219