1、定义相关数据结构,存放进程执行的页面请求顺序(页面走向)。
#define InitPysiBlocks 4 //内存分配的初始物理块数
#define MaxPages 16 //最大页面数
#define Max 30 //最大页面访问次数
int PysicalBlocks[InitPysiBlocks] = { -1 }; //初始每个物理块的状态
int PageSequence[Max]; //定义存放页面走向的数组
2、设计一个函数,其功能是动态创建页面走向序列,页面最大值MaxPages。
3、提供一个用户交互界面,用户可输入不同的页面置换策略(FIFO,OPT,LRU)。
4、设计相应程序计算缺页次数和缺页率。
5、对不同页面置换策略的执行结果进行分析。
题目的简单说明:
设计一个函数,其功能是动态创建页面走向序列,页面最大值MaxPages。”对这句话,我的理解是,创建一个含有30个随机1-16中的整数数组,这个数组就表示页面到来的顺序。
#define InitPysiBlocks 4 //内存分配的初始物理块数int PysicalBlocks[InitPysiBlocks] = { -1 }; //初始每个物理块的状态
这个就表示,物理块数为4,表示可以存放四个页面,采用三种页面置换策略,看他们的缺页次数和缺页率。