2022年操作系统LRU页面置换算法 .pdf

上传人:H****o 文档编号:32195462 上传时间:2022-08-08 格式:PDF 页数:6 大小:40.97KB
返回 下载 相关 举报
2022年操作系统LRU页面置换算法 .pdf_第1页
第1页 / 共6页
2022年操作系统LRU页面置换算法 .pdf_第2页
第2页 / 共6页
点击查看更多>>
资源描述

《2022年操作系统LRU页面置换算法 .pdf》由会员分享,可在线阅读,更多相关《2022年操作系统LRU页面置换算法 .pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、#include /头文件#include / #include /产生随机数所需要的头文件main() int pagen; int memoryn; /可用内存块数为memoryn,页面长度为pagen,int choose; /3=memoryn=5.15=pagen=20 printf(*页*面*置*换*算*法*n); printf(nn 请输入您要求的内存块数量(范围为3 至 5) : ); scanf(%d,&memoryn); if(memoryn5) printf(nn 对不起,您的输入有误,请重新输入:); scanf(%d,&memoryn); printf(nn 请输入您

2、要求的页面长度(范围为8 至 10) :); scanf(%d,&pagen); if(pagen10) printf(nn 对不起,您的输入有误,请重新输入:); scanf(%d,&pagen); /从用户处获取内存块与页面长度/*/ short times5=0,0,0,0,0; /时间轴数组short pagenumber20; /控制页面走向数组short pagememory5=88,88,88,88,88; /物理块数组int i,n; /控制变量为i printf(nnn由您所确定的页面走向为:); for(i=0;ipagen;i+) scanf(%d,&pagenumber

3、i); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - printf(n); int want=0; /want 为缺页数int now; /中断数/控制变量为i pagememory0=pagenumber0;/ 对第一个物理块进行赋值printf( 第 %2d 步:,i=1); for(i=0;imemoryn;i+) printf( %2d,pagememoryi); printf(n); for(i=1;ipagen;i

4、+) if(pagememory0!=pagenumberi) pagememory1=pagenumberi; now=i+1; break; /对第二个物理块进行赋值printf( 第 %2d 步:,now); for(i=0;imemoryn;i+) printf( %2d,pagememoryi); printf(n); for(i=2;ipagen;i+) if(pagememory0!=pagenumberi)&(pagememory1!=pagenumberi) pagememory2=pagenumberi; now=i+1; break; /对第三个物理块进行赋值want=3

5、; /此时可以将缺页值暂定为3 printf( 第 %2d 步:,now); for(i=0;imemoryn;i+) printf( %2d,pagememoryi); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - printf(n); if(memoryn=4) for(i=3;ipagen;i+) if(pagememory0!=pagenumberi)&(pagememory1!=pagenumberi) &(page

6、memory2!=pagenumberi) pagememory3=pagenumberi; now=i+1; want=4; break; printf( 第 %2d 步:,now); for(i=0;imemoryn;i+) printf( %2d,pagememoryi); printf(n); /如果为四个物理块,则为第四个物理块赋值if(memoryn=5) for(i=3;ipagen;i+) if(pagememory0!=pagenumberi)&(pagememory1!=pagenumberi) &(pagememory2!=pagenumberi) pagememory3

7、=pagenumberi; now=i+1; want=4; break; printf( 第 %2d 步:,now); for(i=0;imemoryn;i+) printf( %2d,pagememoryi); printf(n); for(i=4;ipagen;i+) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - if(pagememory0!=pagenumberi)&(pagememory1!=pagenumberi

8、) &(pagememory2!=pagenumberi) &(pagememory3!=pagenumberi) pagememory4=pagenumberi; now=i+1; want=5; break; /如果为五个物理块,则为第四个物理块赋值printf( 第 %2d 步:,now); for(i=0;imemoryn;i+) printf( %2d,pagememoryi); printf(n); int needchange; /页面置换发生时要进行置换的物理块块号int mn=memoryn; / 为时间轴赋初值所用到的物理块数int max; /最大的时间值int j; /

9、控制变量i.j for(i=0;imemoryn;i+) mn-; timesi=mn; /给时间轴数组设定初值for(j=now;jpagen;j+) if(pagenumberj!=pagememory0)&(pagenumberj!=pagememory1) &(pagenumberj!=pagememory2) &(pagenumberj!=pagememory3) &(pagenumberj!=pagememory4) if(times0=times1) max=times1; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - -

10、- - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - else max=times0; if(max=times2) max=times2; if(max=times3) max=times3; if(max=times4) max=times4; /确定时间轴数组里储存的最大时间for(i=0;imemoryn;i+) if(max=timesi) needchange=i; break; /提取出最大时间也就是先进入的页面所对应的物理块号pagememoryneedchange=pagenumberj; for(i=0;imemory

11、n;i+) if(i=needchange) timesi=0; else timesi+; /更新时间轴want+; /缺页数进行自增运算printf( 第 %2d 步:,j+1); for(i=0;imemoryn;i+) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - printf( %2d,pagememoryi); printf(n); else for(i=0;imemoryn;i+) if(pagenumberj=pagememoryi) timesi=0; else timesi+; /出线相同页面只把时间轴自增一,不做其他操作 printf(nn LRU 页面置换次数为: %dn,want); system(pause); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁