先进先出FIFO页面置换算法.doc

先进先出FIFO页面置换算法.doc

ID:58413087

大小:95.50 KB

页数:7页

时间:2020-05-10

先进先出FIFO页面置换算法.doc_第1页
先进先出FIFO页面置换算法.doc_第2页
先进先出FIFO页面置换算法.doc_第3页
先进先出FIFO页面置换算法.doc_第4页
先进先出FIFO页面置换算法.doc_第5页
资源描述:

《先进先出FIFO页面置换算法.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、《操作系统》课外实践报告项目名称:页面置换算法所在班级:姓名:学号:组长:小组成员:指导教师:支丽平成绩评定:页面置换算法中的先进先出算法一实验目的了解最佳页面置换算法与先进先出FIFO页面置换算法,并掌握其基本原理二实验目标用C++模拟最佳页面置换算法与先进先出FIFO页面置换算法三实验步骤第一步,输入系统为进程分配的物理块数(m<=10)第二步,输入总页面数(n<=30)第三步,输入页面号引用串第四步,系统自动给出演示数据第五步,分析数据第六步,重复一到五步骤四技术难点及解决方案技术难点:如何找到最久页面解决方案:建立一个时间数组,做标记五关键数据

2、和算法流程代码如下:#include"iostream"#include"iomanip"//使用setw()时用到的头文件#include"stdio.h"#include"stdlib.h"#include"conio.h"//使用getchar()时用到的头文件usingnamespacestd;#defineMax30//某进程调入内存中的最大页面数#defineSize10//系统为某进程分配的最大物理块数voidInit(intBlock[],intm)//初始化物理块{inti;for(i=0;i

3、}voidcreat(intPage[],intn)//输入页面串引用号{inti;for(i=0;i>Page[i];}}voidFIFO(intPage[],intBlock[],intn,intm){//max_stay:比较当前内存中页面驻留的最久时间,count:统计页面置换次数//get:某物理块是否等待驻入新页面(-1:否)//flag:标记当前序号页面是否已驻入内存(-1:否)//block_num:驻留内存时间最长的页面所在的物理块序号//time[]标记对应序号的物理块中页面驻留时间inti,j,max_st

4、ay=0,count=0;intget=-1,flag=-1,block_num=-1;inttime[Size];for(i=0;i

5、j;break;}}for(j=0;jmax_stay){max_stay=time[j];block_num=j;//block_num标记当前序号物理块中页面驻留时间最久}}if(flag==-1)//不存在相同页面{if(get!=-1)//物理块即将(/等待)驻入新页面{Block[get]=Page[i];//存入页面time[get]=0;//当前物理块重新计时for(j=0;j<=get;j++)//已驻入页面的驻留时间加1{time[j]++;}get=-1;}e

6、lse//页面调度置换,序号block_num的物理块是驻留时间最久的{Block[block_num]=Page[i];time[block_num]=0;for(j=0;j

7、f(n>m)count=count+m;cout<<"缺页中断次数为:"<

8、n>>m;if(m>Size

9、

10、m<1){cout<<"警告:输入的数据错误!"<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。