页面置换算法
实验名称:页面置换算法
实验目的:编写页面置换算法演示程序,理解页面置换算法在虚拟存储器管理中的作用,理解常见的页面置换算法,学会OPT 、LRU 和FIFO 算法的应用。
实验学时:2
实验内容:设计并编写一个页面置换算法模拟演示程序,并通过编译运行。 实验步骤:
1、 编写页面置换算法演示程序(仅供参考)
#include
#include
#define Bsize 3
#define Psize 20
structpageInfor{
int content; //页面号
int timer; //被访问标记
};
PRA(void); //初始化
intfindSpace(void); //查找是否有空闲内存
intfindExist(intcurpage); //查找内存中是否存在该页面
intfindReplace(void); //查找应予置换的页面
void display(void); //显示
void FIFO(void);
void LRU(void);
void Optimal(void);
void BlockClear(void); //BLOCK恢复
structpageInfor *block; //物理块
structpageInfor *page; //页面号串
PRA(void)
{
intQString[20]={7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1},i;
block=(structpageInfor *)malloc(sizeof(structpageInfor)*Bsize);
for(i=0;i
block[i].content=-1;
block[i].timer=0;
}
page=(structpageInfor *)malloc(sizeof(structpageInfor)*Psize);
for(i=0;i
page[i].content=QString[i];
page[i].timer=0;
}
页面置换算法
实验名称:页面置换算法
实验目的:编写页面置换算法演示程序,理解页面置换算法在虚拟存储器管理中的作用,理解常见的页面置换算法,学会OPT 、LRU 和FIFO 算法的应用。
实验学时:2
实验内容:设计并编写一个页面置换算法模拟演示程序,并通过编译运行。 实验步骤:
1、 编写页面置换算法演示程序(仅供参考)
#include
#include
#define Bsize 3
#define Psize 20
structpageInfor{
int content; //页面号
int timer; //被访问标记
};
PRA(void); //初始化
intfindSpace(void); //查找是否有空闲内存
intfindExist(intcurpage); //查找内存中是否存在该页面
intfindReplace(void); //查找应予置换的页面
void display(void); //显示
void FIFO(void);
void LRU(void);
void Optimal(void);
void BlockClear(void); //BLOCK恢复
structpageInfor *block; //物理块
structpageInfor *page; //页面号串
PRA(void)
{
intQString[20]={7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1},i;
block=(structpageInfor *)malloc(sizeof(structpageInfor)*Bsize);
for(i=0;i
block[i].content=-1;
block[i].timer=0;
}
page=(structpageInfor *)malloc(sizeof(structpageInfor)*Psize);
for(i=0;i
page[i].content=QString[i];
page[i].timer=0;
}