.
1 / 13
LRU页调度算法实现
学 院计算机科学与技术
专 业 计算机科学与技术
学 号
学 生 姓 名
指导教师XX
20xx3月15日
一、设计目的、内容与要求
case 1: Zidingyi<>;
break;
case 2: ShowCustomer<>;
break;
case 3: LRU<>;
break;
case 4:
.
6 / 13
exit<0>;
}
}
return 0;
}
int menu_select<>
{
int n;
printf<"***************欢迎进入主界面*****************\n">;
printf<"* 请求页式存储管理中LRU算法的实现 *\n">;
printf<"* *\n">;
printf<"* *\n">;
printf<"* *\n">;
printf<"* *\n">;
printf<"* *\n">;
printf<"* *\n">;
printf<"**********************************************\n">;
do
{
printf<"\n输入你的选择<1~4>:">;
scanf<"%d",&n>;
}while<n<1||n>4>;
.
7 / 13
return<n>;
}
void Zidingyi<>
{
int i;
system<"cls">;
printf<"**********************************************\n">;
printf<" 页式储存管理-LRU算法 \n">;
printf<"**********************************************\n">;
printf<"--------------自定义进程数和块数--------------\n">;
printf<"请输入进程数:">;
scanf<"%d",&pageNum>;
getchar<>;
printf<"请输入块数:">;
scanf<"%d",&physicalblock >;
getchar<>;
printf<"请依次输入页号引用串<中间用空格隔开>:">;
for<i = 0 ; i < pageNum ; i++>
scanf<"%d",&pages[i]>;
}
void LRU<>
{
.
8 / 13
int i,j;
int ReplacePages = 0;//记录置换次数
printf<"***********************************************\n">;
printf<"------------------LRU算法结果显示--------------\n">;
printf<"\n">;
ShowNot<>;
for<i = Fz ; i < pageNum; i++>
{
int key = 0;
for<j = 0 ; j < physicalblock ; j++>//判断该页是否在物理块中
{
if<Fuzhu[j] == pages[i]>
{
key = 1; //该页在内存中
Time[j] = i;//更新时间
break;
}
}
if<key == 0>//若该页不在内存中
{
ReplacePages++; //缺页次数加1
int min = Time[0];
.
LRU页面调度算法实现 来自淘豆网www.taodocs.com转载请标明出处.