电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

页面置换算法代码实现

页面置换算法代码实现_第1页
1/8
页面置换算法代码实现_第2页
2/8
页面置换算法代码实现_第3页
3/8
实验原理:在内存运行过程中,若其所要访问得页面不在内存而需要把她们调入内存,但内存已经没有空闲空间时,为了保证该进程能正常运行,系统必须从内存中调出一页程序或数据送磁盘得对换区中。但应将那个页面调出,需根据一定得算法来确定.通常,把选择换出页面得算法成为页面置换算法.置换算法得好坏,将直接影响到系统得性能。一个好得页面置换算法,应具有较低得页面更换频率.从理论上讲,应将那些以后不再会访问得页面置换出,或者把那些在较长时间内不会在访问得页面调出.目前存在着许多种置换算法(如 FIFO,OPT,LRU),她们都试图更接近理论上得目标。实验目得:1.熟悉F IFO,O P T与L RU 算法2.比较三种算法得性能优劣实验内容:写出 FIFO,O P T 与LR U 算法得程序代码,并比较它们得算法性能.实验步骤:代码如下:#inc lu de <stdio、h>#define M 4 //物理页数#d e fine N 2 0ﻩ//需要调入得页数t ype d ef struct page{int n um;i nt time;}Page;ﻩ//物理页项,包括调入得页号与时间 P a ge mm[M]; //4 个物理页int qu e ue1[2 0],que u e2[20],queue 3[20];ﻩ//记录置换得页int K=0,S=0,T=0;ﻩ//置换页数组得标识int pos=0;//记录存在最长时间项//初始化内存页表项及存储内存情况得空间vo i d IN I T(){int i;for(i=0;i<M;i++){ﻩmm[i]、n um =-1;ﻩﻩm m[i]、ti me =0;}}//取得内存中存在时间最久得位置i n t Get M ax(){ﻩi nt m ax=—1;i nt i;fo r(i=0;i〈M;i++){ﻩﻩif(m m[i]、t i me 〉 max){ﻩmax=mm[i]、time ;ﻩpo s=i;ﻩ}}ﻩr e tur n pos;}//检查最长时间不使用页面 int l o n gesttim e(int fold){ﻩin t i;int m ax=-1;ﻩf or(i=fold;i〈N;i++){ﻩﻩif(m m[0]、n um!=i){ﻩmm[0]、ti m e++;}ﻩﻩﻩif(mm[1]、n um!=i){ﻩﻩﻩmm[1]、ti m e++;{ﻩﻩﻩﻩi f(mm[2]、num!=i){ﻩmm[2]、t i me++;{ﻩﻩﻩﻩif(m m[3]、num!=i){ﻩm m[3]、time++;ﻩﻩ}}f or(i=0;i〈M;i++){if(mm[i]、ti m e>m ax){ﻩmax=mm[i]、time;ﻩﻩﻩpo s=i;ﻩ}}ﻩr etu r n pos;}//检查某页就是否在内存int E qu at i on(int fold){int i;f...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

页面置换算法代码实现

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部