编程实验任务
① 编写一个程序,用rand()生成一个随机的页访问序列,该序列长度为320;采用LRU的页面置换策略,计算当页数为32,帧数为4~32时的页面访问命中率。(命中率=1-页面失效次数/页面访问序列长度。)
注:在计算过程中,需要构造一个页面数组,一个页面访问序列,一个空闲帧队列。
代码如下
#include <stdio.h>
#include<unistd.h>
#include<time.h>
#include<stdlib.h>
struct pl_type
{
int pn,pfn,time;
};
struct pfc_struct
{
int pn,pfn;
struct pfc_struct * next;
};
int s[320];
struct pl_type pl[32];
struct pfc_struct pfc[32];
struct pfc_struct * freepf_head;
void initial(int pf);
void lru(int pf);
int main()
{
int i,total_pf;