欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOC文档下载  

    FIFO算法实验报告材料.doc

    • 资源ID:21300       资源大小:80.40KB        全文页数:9页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    FIFO算法实验报告材料.doc

    word实 验 报 告 课程名称学生所在系部年级专业、班级学生 学号任课教师实验成绩一、 实验题目:先进先出FIFO页面置换算法和最近最久未使用LRU置换算法程序设计二、 实验目的:通过对FIFO,LRU算法的模拟,进一步理解进程的根本概念,加深对进程运行状态和进程调度过程、调度算法的理解。三、 实验设备与环境:1. 硬件设备:PC机一台2. 软件环境:安装Windows操作系统或者Linux操作系统,并安装相关的程序开发环境,如C C+Java 等编程语言环境。四、 实验内容与要求:1用C语言编程实现对FIFO,LRU算法的模拟。2每个用来标识进程的进程控制块PCB可用结构来描述,包括以下字段:五、实验方法内容1. 算法流程图开始检查内存是否有空闲块选择最先进入的页面置换读入访问页面信息存入页面输出置换出的页面序号完毕未读完已读完有无2. 主要的常量变量char a;int m=4,n=12,i,y12=1,2,3,4,1,2,5,1,2,3,4,5;主要模块void FIFO(void);void LRU(void);void Xunhuan()void main()四代码#include"stdio.h"#include"stdlib.h"#include"time.h"void FIFO(void);void LRU(void);char a;int m=4,n=12,i,y12=1,2,3,4,1,2,5,1,2,3,4,5; /*m为物理块数,n为要访问的页面数*/typedef struct page int num; int time;Page;Page x10;int GetMax(page *x) int i; int max=-1; int tag=0; for(i=0;i<m;i+) if(xi.time>max) max=xi.time; tag=i; return tag;void Xunhuan() printf("Please select 1:FIFO算法n 2:LRU算法n"); scanf("%s",&a); printf("物理块数:4n"); /scanf("%d",&m); for(i=0;i<m;i+) xi.num=-1; printf("所要访问的页面数:12n"); /scanf("%d",&n); /srand(time(NULL); printf("所要访问的页面号序列为:"); for(i=0;i<n;i+) printf("%d ",yi); printf("n"); printf("页面置换步骤如下:n"); switch(a) case '1':FIFO();break; case '2':LRU(); break; void main() char a; Xunhuan(); while(1) printf("Continue or Exit:C/Anykey:n"); scanf("%s",&a); if(a='c'|a='C') Xunhuan(); else break; exit(0);void FIFO(void) int i,j,u; for(i=0;i<m;i+) xi.time=0; x0.num=y0; x0.time=1; printf(" %d n",x0.num); for(i=1;i<n;i+) u=0; for(j=0;j<m;j+) if(xj.num=yi) u=1; break; if(u!=1&&xm-1.num!=-1) j=GetMax(x); xj.num=yi; xj.time=0; if(u!=1&&xm-1.num=-1) for(j=0;j<m;j+) if(xj.num=-1) xj.num=yi; break; for(j=0;j<m;j+) if(xj.num!=-1) xj.time+; for(j=0;j<m;j+) if(xj.num=-1) printf("%2c ",32); else printf("%2d ",xj.num); printf("n"); void LRU() int i,j,u; for(i=0;i<m;i+) xi.time=0; x0.num=y0; x0.time=1; printf(" %d n",x0.num); for(i=1;i<n;i+) u=0; for(j=0;j<m;j+) if(xj.num=yi) xj.time=0; u=1; break; if(u!=1&&xm-1.num!=-1) j=GetMax(x); xj.num=yi; xj.time=0; if(u!=1&&xm-1.num=-1) for(j=0;j<m;j+) if(xj.num=-1) xj.num=yi; break; for(j=0;j<m;j+) if(xj.num!=-1) xj.time+; for(j=0;j<m;j+) if(xj.num=-1) printf("%2c ",32); else printf("%2d ",xj.num); printf("n"); 五、 实验结果1. 执行结果2. 结果分析由结果可以看出,使用FIFO算法,总是淘汰最先进入内存的页面,即即选择在内存中驻留时间最久的页面予以淘汰。使用LRU算法如此是选择最近最久未使用的页面予以淘汰。七、实验总结这次实验让我深刻理解了FIFO和LRU算法。由于FIFO所依据的条件是各个页面存入的时间,而页面调入的先后并不能反映页面的使用情况,所以FIFO算法的性能较差。LRU算法相对较好。通过这个实验我体会到了编程的思路流程,结构流程图的作用。一个程序如果一开始计划的好,结构设计完善,才可能顺利进展。教 师 评 价评定项目ABCD评定项目ABCD算法正确界面美观,布局合理程序结构合理操作熟练语法、语义正确解析完整实验结果正确文字流畅报告规X题解正确其他:评价教师签名:年 月 日9 / 9

    注意事项

    本文(FIFO算法实验报告材料.doc)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开