




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、在内存划出一块区域,并进行页面划分;设计请求页表;模拟页面分配;分别模拟先进先出页面淘汰算法FIFO”、最近最少使用页面淘汰算法LRU和理想型淘汰算法OPTTFIFO,LRU,OPE种算法。将结果保存本程序随机产生请求序列,分别模拟在FIFO.txt,LRU.txt,OPT.tx巳个文件中。程序代码:#include<stdio.h>#include<stdlib.h>#include<time.h>#defineN20#defineP3structDuLNodeintdata;structDuLNode*prior;structDuLNode*next;i
2、ntpageFIFON+1;intfront=0,rear=0;intpageingN+1,pmemP+1;intmemcount=1;voidinit(inta,intT)inti;for(i=0;i<=T;i+)ai=-2;intinsert_item(intitem,intque,intT)if(rear+1)%(T+1)=front)return1;querear=item;rear=(rear+1)%(T+1);return0;intremove_item(int*item,intque,intT)if(front=rear)return1;*item=quefront;fro
3、nt=(front+1)%(T+1);return0;intfindif(inta,intb,intT)inti;for(i=1;i<=T;i+)if(ai=b)returni;return-1;voidinsertintomem(inta,intb,intn)if(memcount<=P)amemcount=b;memcount+;elsean=b;voidinitpage(intpage)inttemp,i;srand(unsigned)time(0);for(i=1;i<=N;i+)temp=rand()%10;pagei=temp;voidaddtoLink(stru
4、ctDuLNode*p,inte)structDuLNode*add;add=malloc(sizeof(structDuLNode);add->data=e;add->prior=p->prior;p->prior->next=add;add->next=p;p->prior=add;intgetI(structDuLNode*p,inte)inti;structDuLNode*cd=p;for(i=1;i+)cd=cd->next;if(cd->data=e)returni;if(cd=p)return-1;voiddeleLink(s
5、tructDuLNode*p,inti,int*e)intn;structDuLNode*cd=p;for(n=1;n<=i;n+)cd=cd->next;*e=cd->data;cd->prior->next=cd->next;cd->next->prior=cd->prior;free(cd);voidremovebottom(structDuLNode*p,int*e)structDuLNode*cd=p->next;*e=cd->data;cd->next->prior=p;p->next=cd->
6、;next;free(cd);intgetcount(inta,intb,intn,intT)inti;for(i=n;i<=T;i+)if(ai=b)return(i-n);return-1;voidgetreplacepage(inta,intb,inti,int*e)intt,cP+1,temp,T,count=0,errorP+1;for(t=1;t<=P;t+)if(getcount(a,bt,i,N)!=-1)ct=getcount(a,bt,i,N);elseerror+count=bt;if(count=0)temp=c1;T=b1;for(t=1;t<=P;
7、t+)if(ct>temp)temp=ct;T=bt;*e=T;elsefor(t=1;t<=count;t+)ct=findif(a,errort,N);temp=c1;T=error1;for(t=1;t<=count;t+)if(ct<temp)temp=ct;T=errort;*e=T;voidmain()inti,temp,temp1,error=0,ErrorCP;FILE*fp1,*fp2,*fp3;structDuLNode*p;p=(structDuLNode*)malloc(sizeof(structDuLNode);p->prior=p-&g
8、t;next=p;initpage(pageing);init(pmem,P);if(fp1=fopen("FIFO.txt","a")=NULL)printf("不能打开文件!n");exit(1);for(i=1;i<=N;i+)fprintf(fp1,"%d",pageingi);fprintf(fp1,"n");for(i=1;i<=N;i+)if(memcount>P&&findif(pmem,pageingi,P)=-1)remove_item(&a
9、mp;temp,pageFIFO,N);insertintomem(pmem,pageingi,findif(pmem,temp,P);insert_item(pageingi,pageFIFO,N);fprintf(fp1,"%d被引用,d被替换->出现第d次错误!n",pageingi,temp,+error);elseif(memcount<=P&&findif(pmem,pageingi,P)=-1)insertintomem(pmem,pageingi,memcount);insert_item(pageingi,pageFIFO,N)
10、;fprintf(fp1,"页中未满。%d被引用,出现第d次错误!n",pageingi,+error);elsefprintf(fp1,"%d已在页中->未出现错误。n",pageingi);fclose(fp1);ErrorC0=error;memcount=1;error=0;init(pmem,P);if(fp2=fopen("LRU.txt","a")=NULL)printf("不能打开文件!n");exit(1);for(i=1;i<=N;i+)fprintf(fp2,&
11、quot;%d",pageingi);fprintf(fp2,"n");for(i=1;i<=N;i+)if(memcount>P&&findif(pmem,pageingi,P)=-1)removebottom(p,&temp);insertintomem(pmem,pageingi,findif(pmem,temp,P);if(getI(p,pageingi)!=-1)deleLink(p,getI(p,pageingi),&temp1);addtoLink(p,pageingi);fprintf(fp2,"
12、;%d被引用,d被替换->出现第d次错误!n",pageingi,temp,+error);elseif(memcount<=P&&findif(pmem,pageingi,P)=-1)insertintomem(pmem,pageingi,memcount);addtoLink(p,pageingi);fprintf(fp2,"页中未满。%d被引用->出现第d次错误!n",p->prior->data,+error);elsedeleLink(p,getI(p,pageingi),&temp1);addtoL
13、ink(p,pageingi);fprintf(fp2,"%d已在页中->未出现错误。n",pageingi);fclose(fp2);ErrorC1=error;memcount=1;error=0;init(pmem,P);if(fp3=fopen("OPT.txt","a")=NULL)printf("不能打开文件!n");exit(1);for(i=1;i<=N;i+)fprintf(fp3,"%d",pageingi);fprintf(fp3,"n");
14、for(i=1;i<=N;i+)if(memcount>P&&findif(pmem,pageingi,P)=-1)getreplacepage(pageing,pmem,i,&temp);insertintomem(pmem,pageingi,findif(pmem,temp,P);fprintf(fp3,"%d被引用,d被替换-出现第d次错误!n",pageingi,temp,+error);elseif(memcount=P&&findif(pmem,pageingi,P)=-1)insertintomem(pmem,pageingi,memcount);fprintf(fp3,"页中未满。%d被引用-出现第d次错误!n",pageingi,+error);elsefprintf(fp3,"%d已在页中-未出现错误。n&qu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基于蛋白质组学研究疏肝通窍法对肝郁证青光眼大鼠视网膜神经节细胞的作用机制
- 地方文化题材微纪录片的网感化叙事研究-兼谈毕业作品《守艺庐州》
- 我爱爸爸妈妈心理健康
- 痛经防治与健康管理讲座
- CRRT健康教育比赛
- 干细胞治疗肿瘤的临床应用与研究进展
- 百草枯中毒的病例讨论
- 颈椎健康科普课件
- 餐饮促销主题活动策划方案
- 颅脑外伤护理课件
- GB/T 3480.1-2019直齿轮和斜齿轮承载能力计算第1部分:基本原理、概述及通用影响系数
- GB/T 21153-2007土方机械尺寸、性能和参数的单位与测量准确度
- GB/T 10045-2001碳钢药芯焊丝
- GA/T 1556-2019道路交通执法人体血液采集技术规范
- GA 533-2005挡烟垂壁
- 复习课专题讲座课件
- 提高人工气道气囊管理正确率品管圈汇报书模板课件
- 2023年景德镇艺术职业大学辅导员招聘考试笔试题库及答案解析
- 信号与系统思维导图(所有内容)
- 药物外渗严重后果以及处理
- 国家职业教育老年服务与管理专业教学资源库
评论
0/150
提交评论