C语言模拟LRU页面置换算法

2025-05-06 19:26:57

1、首先打开VC++6.0

C语言模拟LRU页面置换算法

3、选择C++ source file 新建一个空白文档

C语言模拟LRU页面置换算法

5、定义栈的结构 即置换器typedef struct stack{int page[PAGENUM];int head;}PAGER;

C语言模拟LRU页面置换算法

7、栈的初始化void InitPager(){int top = 0;int i,j巳呀屋饔,tmp;int r;randomize();r = random(MAXPAGENUM);pager.page[top++] = r;while(top < PAGENUM ){ randomize();r = random(MAXPAGENUM);for(j =0;j<top;j++){if(r == pager.page[j]){break;}if(j == top-1)pager.page[top++] = r;}}pager.head = PAGENUM - 1;}

C语言模拟LRU页面置换算法

9、出栈操作,即 交换出页面的操作 void PopPage(int p){MovingPage(p);pager.head = PAGENUM - 2;}

C语言模拟LRU页面置换算法

11、/*打印主存中的页面*/void printPager(){ int i;printf("The pages in the pager is:");for(i = 0; i< PAGENUM;i++){printf(" %d ",pager.page[i]);}printf("\n");}

C语言模拟LRU页面置换算法

13、主函数int main(){int i; for(i = 0; i<3; i++){InitPager();printf("ROUND %d:\n\n",i+1);PagingProcess();}getch();return 0;}

C语言模拟LRU页面置换算法
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢