下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include<conio.h>#include<stdio.h>#include<stdlib.h>#include<string.h>#defineMyprintfprintf("|++++++++++++++++|\n")/*表格控制*/#definebsize4//物理块大小#definepsize16//进程大小typedefstructpage{intnum;/*记录页面号*/inttime;/*记录调入内存时间*/}Page;/*页面逻辑结构,结构为方便算法实现设计*/Pageb[bsize];/*内存单元数*/intc[bsize][psize];/*暂保存内存当前的状态:缓冲区*/intqueue[100];/*记录调入队列*/intK;/*调入队列计数变量*/intphb[bsize]={0};//物理块标号intpro[psize]={0};//进程序列号intflag[bsize]={0};//进程等待次数(存放最久未被使用的进程标志)inti=0,j=0,k=0;//i表示进程序列号,j表示物理块号intm=-1,n=-1;//物理块空闲和进程是否相同判断标志intmax=-1,maxflag=0;//标记替换物理块进程下标intcount=0;//统计页面缺页次数//**************************************************************////**************************************************************//随机产生序列号函数//**************************************************************int*build(){printf("随机产生一个进程序列号为:\n");inti=0;for(i=0;i<psize;i++){pro[i]=10*rand()/(RAND_MAX+1)+1;printf("%d",pro[i]);}printf("\n");return(pro);}//**************************************************************//查找空闲物理块//**************************************************************intsearchpb(){for(j=0;j<bsize;j++){if(phb[j]==0){m=j;returnm;break;}}return-1;}//**************************************************************//查找相同进程//**************************************************************intsearchpro(){for(j=0;j<bsize;j++){if(phb[j]==pro[i]){n=j;returnj;}}return-1;}//**************************************************************//初始化内存//**************************************************************voidempty(){for(i=0;i<bsize;i++)phb[i]=0;count=0;//计数器置零}//**************************************************************//先进先出页面置换算法//**************************************************************voidFIFO(){for(i=0;i<psize;i++){m=searchpb();n=searchpro();//找flag值最大的for(j=0;j<bsize;j++){if(flag[j]>maxflag){maxflag=flag[j];max=j;}}if(n==-1)//不存在相同进程{if(m!=-1)//存在空闲物理块{phb[m]=pro[i];//进程号填入该空闲物理块count++;flag[m]=0;for(j=0;j<=m;j++){flag[j]++;}m=-1;}else//不存在空闲物理块{phb[max]=pro[i];flag[max]=0;for(j=0;j<bsize;j++){flag[j]++;}max=-1;maxflag=0;count++;}}else//存在相同的进程{phb[n]=pro[i];for(j=0;j<bsize;j++){flag[j]++;}n=-1;}for(j=0;j<bsize;j++){printf("%d",phb[j]);}printf("\n");}printf("缺页次数为:%d\n",count);printf("\n");}//**************************************************************//**************************************************************/*初始化内存单元、缓冲区*//*voidInit(Page*b,intc[bsize][psize]){inti,j;for(i=0;i<psize;i++){b[i].num=-1;b[i].time=psize-i-1;}for(i=0;i<bsize;i++)for(j=0;j<psize;j++)c[i][j]=-1;}*//*取得在内存中停留最久的页面,默认状态下为最早调入的页面*/intGetMax(Page*b){inti;intmax=-1;inttag=0;for(i=0;i<bsize;i++){if(b[i].time>max){max=b[i].time;tag=i;}}returntag;}/*判断页面是否已在内存中*/intEquation(intfold,Page*b){inti;for(i=0;i<bsize;i++){if(fold==b[i].num)returni;}return-1;}//**************************************************************//主函数//**************************************************************voidmain(){intsel;do{printf("\t\t\t\t\t\t");printf("\t\t\t☆☆^-^欢迎进入操作系统界面^-^☆☆\t\t\t");printf("\t\t\t\t\t\t\n");printf("\t\t\t☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆\t\t\t");printf("\t\t\t☆虚拟内存☆\t\t\t");printf("\t\t\t☆☆\t\t\t");printf("\t\t\t☆1、产生随机序列☆\t\t\t");printf("\t\t\t☆☆\t\t\t");printf("\t\t\t☆2、先进先出(FIFO)☆\t\t\t");printf("\t\t\t☆☆\t\t\t");printf("\t\t\t☆0、退出(Exit)☆\t\t\t");printf("\t\t\t☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆\t\t\t\n");printf("请选择所要执行的操作(0/1/2):");scanf("%d",&sel)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025高档会所装修合同
- 2025不良金融资产转让合同零星转让
- 2025关于代理合同格式
- 2025工程施工合同中核心条款有些
- 课题申报书:共同富裕下易地扶贫搬迁家庭收入不平等的测度、机理及政策创新研究
- 课题申报书:高校专业课教师课程思政元素挖掘能力提升路径研究
- 课题申报书:服务新质生产力发展的职业教育专业教学资源库建设实践路径研究
- 课题申报书:非结构化文本数据驱动的智能辅助诊疗决策方法研究
- 上海欧华职业技术学院《画法几何及建筑制图》2023-2024学年第一学期期末试卷
- 上海纽约大学《内燃机原理》2023-2024学年第一学期期末试卷
- 剪映使用课件s
- B2B电子商务网站调研报告
- 《基础教育课程改革(新课程改革)》题库含答案解析
- 钹式换能器的共振特性研究
- 【道法广角】成语故事会:立木为信
- 《我们去看海》阅读答案
- 酒店年度筹备经营管理方案大全经营收入预算
- 物联网中的传感与控制机制 说课课件
- 西昌卫生系统招聘2022年考试真题及答案解析一
- 2023-2024学年浙江省瑞安市小学数学三年级上册期末自测试题
- NB/T 10743-2021智能化综采工作面验收规范
评论
0/150
提交评论