📄 newfifo.c
字号:
#include<stdio.h>
void main()
{
int m,k; //m为内存块数
int i=0,j=0,count=0; //count计算缺页次数,s为缺页率
int page[32],block[32]; //定义数组长度
printf("请输入内存容量m:");
scanf("%d",&m);
printf("请输入页面次序:\n");
for(i=0;i<12;i++)
{scanf("%d",&page[i]);}
for(j=0;j<m;j++)//初始化block[j];使等于-1,表示开始时内存中无页面.
{
block[j]=-1;
}
i=0,j=0;
while(i<12)
{
for(k=0;k<m;k++)
{
if(block[k]==page[i])
{
printf("内存中有这个页面,直接访问.\n");
break;
}
} // 判断内存中是否有该页面.
if(k==m)
{
if(block[m-1]<0)
{
block[j]=page[i];
printf("%d页面进入内存,",block[j]);
count++;
printf("产生%d次缺页\n",count);
j++;
j=j%m;
}//开始的m个页面进入内存
else
{
count++;
printf("%d页面被置换出去,产生%d次缺页\n",block[j],count);
block[j]=page[i];
j++;
j=j%m;
}
}//if
i++;
}//while
}//main
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -