欢迎来到天天文库
浏览记录
ID:42463221
大小:82.00 KB
页数:8页
时间:2019-09-15
《实验五置换算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、请求页式存储管理的页面置换算法一.实验目的通过编写和调试请求页式存储管理中页血置换算法的模拟程序,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。二.实验属性设计三.实验内容1.最佳置换算法(OPT):将以后永不使用的或许是在最长(未来)吋间内不再被访问的页面换出。2.先进先出算法(FIFO):淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。3.最近最久未使用算法(LRU):淘汰最近最久未被使用的页而。四.实验报告1.写出你编写的C语言程序。2.总结体会请求页式存储管理的实现原
2、理。3.对不同算法的性能进行评价。源代码:#include#include#include#include#defineMyprintfprintf("
3、■一+■一+—+――+—+■一4-■一+■一+―+—+—+■一+■一+—+―+—
4、")/*表格控制勺#definebsize4〃物理块大小#definepsize16〃进程大小typedefstructpage{intnum;/*记录页面号*/inttime;/*记录调入内存时
5、间*/}Page;/*页面逻辑结构,结构为方便算法实现设计*/Pagebfbsizel;/*内存单元数*/intc[bsizel[psize];/*暂保存内存当前的状态:缓冲区*/intqueue[100];/*记录调入队列*/intK;/*调入队列计数变量*/intphb[bsize]={0};〃物理块标号intprofpsize]={0};〃进程序列号intflag[bsize]={0};〃进程等待次数(存放最久未被使用的进程标志)inti=0,j=0,k=0;//i表示进程序列号,j表示物理块号int
6、m二・hn=-l;〃物理块空闲和进程是否相同判断标志intmax=-1,maxflag=0;〃标记替换物理块进程下标intcount=0;〃统计页血缺页次数jj•*«•上*1><2^•卜•上•卜•上•上•上•上•上•上•丄••i*/ff/♦[・*Tw♦[・吟・*T*―沪*T**T»♦[・♦[・*T»♦[・*T»♦[・♦[・♦[・*T*7、w£^wmvl^<1#<1#kL#JJ吃、■評*7、rj^齐、rj^吃、rj^rj%■評rj・■評♦評♦評■卜♦評•卜*{w.卜•卜•卜*{w.卜.卜•卜■卜rp■卜rj^■卜rp■卜rj^■卜rj^rj*rprj*rj*ryw•卜rpryw•卜•卜rj*ryw•卜rj*rj*int*build()printfC1随机产生一个进程序列号为:”);for(inti=0;i8、rintfC'Xn");return(pro);)〃**************************************************************〃杳找空闲物理块f/■立■立•匕•上■上■立■匕■立■“■立■上■立■立■上■上^3^■上•X*•卜•上•卜•上•上•上•上•上•上•丄••i*f/♦[・*1*♦[・―沪―沪彳.♦[・―沪♦[・彳.♦[・♦[・♦[・彳・彳・彳・彳・彳・彳・彳・彳・彳・彳・9、+)if(phb[j]==0)m=j;returnm;break;}}return-1;)〃**************************************************************〃杳找相同进程JJ■立•*«•二•■立•匕•上■上■立■匕■立■“■立■上■立■立■上■上^3^■上•X*・上•卜•上•卜•上•上•上•上・上•上•上•丄••i*JJ♦[・*Tw♦[・—J・*T*―沪*T*―沪彳.♦[・―沪♦[・彳.♦[・吟・♦[・♦[・彳・彳・彳・彳・彳・彳・彳・10、T*彳・*T*彳・・^*彳・^T*
7、w£^wmvl^<1#<1#kL#JJ吃、■評*7、rj^齐、rj^吃、rj^rj%■評rj・■評♦評♦評■卜♦評•卜*{w.卜•卜•卜*{w.卜.卜•卜■卜rp■卜rj^■卜rp■卜rj^■卜rj^rj*rprj*rj*ryw•卜rpryw•卜•卜rj*ryw•卜rj*rj*int*build()printfC1随机产生一个进程序列号为:”);for(inti=0;i8、rintfC'Xn");return(pro);)〃**************************************************************〃杳找空闲物理块f/■立■立•匕•上■上■立■匕■立■“■立■上■立■立■上■上^3^■上•X*•卜•上•卜•上•上•上•上•上•上•丄••i*f/♦[・*1*♦[・―沪―沪彳.♦[・―沪♦[・彳.♦[・♦[・♦[・彳・彳・彳・彳・彳・彳・彳・彳・彳・彳・9、+)if(phb[j]==0)m=j;returnm;break;}}return-1;)〃**************************************************************〃杳找相同进程JJ■立•*«•二•■立•匕•上■上■立■匕■立■“■立■上■立■立■上■上^3^■上•X*・上•卜•上•卜•上•上•上•上・上•上•上•丄••i*JJ♦[・*Tw♦[・—J・*T*―沪*T*―沪彳.♦[・―沪♦[・彳.♦[・吟・♦[・♦[・彳・彳・彳・彳・彳・彳・彳・10、T*彳・*T*彳・・^*彳・^T*
8、rintfC'Xn");return(pro);)〃**************************************************************〃杳找空闲物理块f/■立■立•匕•上■上■立■匕■立■“■立■上■立■立■上■上^3^■上•X*•卜•上•卜•上•上•上•上•上•上•丄••i*f/♦[・*1*♦[・―沪―沪彳.♦[・―沪♦[・彳.♦[・♦[・♦[・彳・彳・彳・彳・彳・彳・彳・彳・彳・彳・9、+)if(phb[j]==0)m=j;returnm;break;}}return-1;)〃**************************************************************〃杳找相同进程JJ■立•*«•二•■立•匕•上■上■立■匕■立■“■立■上■立■立■上■上^3^■上•X*・上•卜•上•卜•上•上•上•上・上•上•上•丄••i*JJ♦[・*Tw♦[・—J・*T*―沪*T*―沪彳.♦[・―沪♦[・彳.♦[・吟・♦[・♦[・彳・彳・彳・彳・彳・彳・彳・10、T*彳・*T*彳・・^*彳・^T*
9、+)if(phb[j]==0)m=j;returnm;break;}}return-1;)〃**************************************************************〃杳找相同进程JJ■立•*«•二•■立•匕•上■上■立■匕■立■“■立■上■立■立■上■上^3^■上•X*・上•卜•上•卜•上•上•上•上・上•上•上•丄••i*JJ♦[・*Tw♦[・—J・*T*―沪*T*―沪彳.♦[・―沪♦[・彳.♦[・吟・♦[・♦[・彳・彳・彳・彳・彳・彳・彳・10、T*彳・*T*彳・・^*彳・^T*
10、T*彳・*T*彳・・^*彳・^T*
此文档下载收益归作者所有