Linux页面置换算法的C语言实现
编写算法,实现页面置换算法FIFO、LRU、OPT;针对内存地址引用串,进行页面置换算法进行页面置换。
其中,算法所需的各种参数由输入产生(手工输入或者随机数产生);输出内存驻留的页面集合,缺页次数以及缺页率。
#include//#include #include #include //随机数 #define Myprintf printf("|---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---|n") / int M; int N; typedef struct page { int num; int time; //(lru那用到) int index; //记录调入内存的先后次序 //从1开始(FIFO那用到) }Page; Page b[10]; //从0开始 int c[10][150]; int queue[100]; int K; void Init(Page *b,int c[10][150]) { int i,j; for(i=0;i max) { max=b[i].time; tag=i; } } return tag; } int Equation(int fold,Page *b) { int i; for(i=0;i =0) //在内存中 { b[val].time=0; //存在就把那个东西的时间变成0 for(i=0;i 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。



