其他语言

本类阅读TOP10

·基于Solaris 开发环境的整体构思
·使用AutoMake轻松生成Makefile
·BCB数据库图像保存技术
·GNU中的Makefile
·射频芯片nRF401天线设计的分析
·iframe 的自适应高度
·BCB之Socket通信
·软件企业如何实施CMM
·入门系列--OpenGL最简单的入门
·WIN95中日志钩子(JournalRecord Hook)的使用

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
采用LRU算法模拟页式存储管理

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

/* $ 本程序用来模拟虚拟页式存储管理中的页面置换 & written by 计算机信息工程学院 02级师范【1】班 王瑞珩 学号: 026210104 @2004.12.18 */ /* $ 本程序用来模拟虚拟页式存储管理中的页面置换 & $ 快表页面固定为4块,要求从键盘输入N个页面号 & $ 输出每次快表页面的内容和缺页次数,缺页率 & */ #include #define PAGES 4 /* 快表页面数 */ #define N 16 /*最多输入的页面号*/ int pages[PAGES][2]; /*page[i][0]保存页面号, page[i][1]保存页面存留时间*/ int queue[N]; /*页面号数组*/ /*------------初始化:快表和页面号数组++++++++++++++*/ void initialise(void) { int i; for(i=0;i0&&num<=N) { queue[i]=num; i++; scanf("%d",&num); } else printf("输入错误数据~!\n"); } return i; } /* 输出快表的内容 */ void display_pages(void) { int i=0; for(;i-1) /*若已经存在,修改相应序号的属性值*/ pages[temp][1]=1; else /*若不存在,修改返回序号的内容,并修改属性值*/ { (* lack_page)++; pages[0-temp-1][0]=queue[i]; pages[0-temp-1][1]=1; } printf("第%2d个页面换进时快表的内容:",i+1); display_pages(); i++; } } int main(void) { int lack=0; float totle_page=0; initialise(); totle_page=(float)input_pages(); LRU(&lack); printf("缺页数为:%d\n",lack); printf("缺页率为:%0.3f\n",lack/totle_page); }


相关文章

相关软件