📄 xianjinxiachu.cpp
字号:
#include "stdlib.h"
#include"iostream.h"
int b[4]={0};
int a[12]={4,3,2,1,4,3,5,4,3,2,1,5};
int m=0,n=0;
int i,j;
Print()
{
int i;
for(i=0;i<4;i++)
printf("%d ",b[i]);
printf("\n");
return 0;
}
FIFO()
{
printf("FIFO\n");
for(j=0;j<4;j++)
{
b[j]=a[j];
Print();
n++;
getch();
}
for(j=4;j<12;j++)
{
m=0;
for(i=0;i<4;i++)
if(a[j]==b[i])
{
m=1;
printf("\n");
getch();
break;
}
if(m==0)
{
for(i=0;i<3;i++)
b[i]=b[i+1];
b[3]=a[j];
Print();
n++;
getch();
//getche();
}
}
printf("FIFO page faults:%d\n",n);
printf("FIFO page fault rate:%f",(double)n/12);
getch();
return 0;
}
LRU()
{
int c=0;
n=0;
printf("\nLRU:\n");
for(j=0;j<4;j++)
{
b[j]=a[j];
Print();
n++;
getch();
}
for(j=4;j<12;j++)
{
m=0;
for(i=0;i<4;i++)
if(a[j]==b[i])
{
c=a[j];
for(i++;i<4;i++)
{
b[i-1]=b[i];
}
b[3]=c;
m=1;
printf("\n");
getch();
}
if(m==0)
{
for(i=0;i<3;i++)
b[i]=b[i+1];
b[3]=a[j];
Print();
n++;
getch();
}
}
printf("LRU page faults:%d\n ",n);
printf("LRU page fault rate:%f",(double)n/12);
getch();
return 0;
}
main()
{
clrscr();
printf("The page number:\n");
for(i=0;i<12;i++)
{
a[i]=random(10);
printf("%d ",a[i]);
}
printf("\n");
FIFO();
LRU();
getch();
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -