




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告学院(系)名称:计算机与通信工程学院姓名刘子贤学号20126090专业计算机科学与技术(中加)班级2012级4班实验项目实验三:磁盘调度算法的实现课程名称操作系统课程代码0668036实验时间2014 年12月 16 日 第5、6节2014 年12月19日 第1、2节2015 年1月6日 第5、6节实验地点软件实验室7-216软件实验室7-216软件实验室7-216批改意见成绩教师签字: 实验内容:1 本实验是模拟操作系统的磁盘寻道方式,运用磁盘访问顺序的不同来设计磁盘的调度算法。2 实现的磁盘调度算法有FCFS,SSTF,SCAN,CSCAN和 NStepSCAN算法。3 设定开始磁道号寻道范围,依据起始扫描磁道号和最大磁道号数,随机产生要进行寻道的磁道号序列。4 选择磁盘调度算法,显示该算法的磁道访问顺序,计算出移动的磁道总数和平均寻道总数。5 按算法的寻道效率进行排序,并对各算法的性能进行分析比较。实验要求:1详细描述实验设计思想、程序结构及各模块设计思路;2 详细描述程序所用数据结构及算法;3 明确给出测试用例和实验结果;4 为增加程序可读性,在程序中进行适当注释说明;5 认真进行实验总结,包括:设计中遇到的问题、解决方法与收获等;6 实验报告撰写要求结构清晰、描述准确逻辑性强;7 实验过程中,同学之间可以进行讨论互相提高,但绝对禁止抄袭。【实验过程记录(源程序、测试用例、测试结果及心得体会等)】源程序:#include #includevoid FCFS(int b,int n,int init) int i,s,sum;int a20;for(i=0;in;i+) ai=bi;s=init;sum=0;for(i=0;in;i+) printf(第%d次访问的磁道:%dn,i+1,ai); sum+=abs(s-ai);s=ai;printf(平均寻道长度:%fn,sum*1.0/n);void SSTF(int b,int n,int k) int i,j,s,sum=0,p;int a20;for(i=0;i=0;i-)s=a0;p=0;for(j=0;j=i;j+) if(abs(aj-k)abs(s-k) s=aj; p=j; ap=ai;printf(第%d次访问的磁道:%dn,n-i,s);sum+=abs(s-k);k=s;printf(平均寻道长度:%fn,sum*1.0/n);void SCAN1(int b,int n,int k) int i,j,s,sum=0,p,biaoji;int a20;for(i=0;i=0;i-)biaoji=0;for(j=0;j=i;j+) if(aj-k0) biaoji=1; p=j; break; if(biaoji=1) s=ap; for(j=0;j=i;j+) if(ajk&k-ajk-s) s=aj; p=j; ap=ai; printf(第%d次访问的磁道:%dn,n-i,s); sum+=k-s; k=s;elses=a0;for(j=0;j=i;j+) if(aj-k=s-k) s=aj; p=j; ap=ai;printf(第%d次访问的磁道:%dn,n-i,s); sum+=abs(k-s); k=s;printf(平均寻道长度:%fn,sum*1.0/n);void SCAN2(int b,int n,int k) int i,j,s,sum=0,p,biaoji;int a20;for(i=0;i=0;i-)biaoji=0;for(j=0;j0) biaoji=1; p=j; break; if(biaoji=1) s=ap; for(j=0;jk&aj-ks-k) s=aj; p=j; ap=ai; printf(第%d次访问的磁道:%dn,n-i,s); sum+=s-k; k=s;elses=a0;for(j=0;j=i;j+) if(k-aj=k-s) s=aj; p=j; ap=ai;printf(第%d次访问的磁道:%dn,n-i,s); sum+=abs(k-s); k=s;printf(平均寻道长度:%fn,sum*1.0/n);void C_SCAN(int b,int n,int k) int i,j,s,sum=0,p,biaoji;int a20;for(i=0;i=0;i-)biaoji=0;for(j=0;j0) biaoji=1; p=j; break; if(biaoji=1) s=ap; for(j=0;jk&aj-ks-k) s=aj; p=j; ap=ai; printf(第%d次访问的磁道:%dn,n-i,s); sum+=s-k; k=s; if(biaoji=0) break;s=a0;for(j=0;j=i;j+) if(aj=0;i-)s=a0;for(j=0;j=i;j+) if(aj-ks-k) s=aj; p=j; ap=ai;printf(第%d次访问的磁道:%dn,n-i,s);sum+=s-k;k=s;printf(平均寻道长度:%fn,sum*1.0/n);void main()int a20;int i,n,k,k1,init;printf(请输入需要访问的磁道总数:);scanf(%d,&n);for(i=0;in;i+)printf(需要访问的磁道%d:,i+1);scanf(%d,&ai);printf(请输入指针所在磁道:);scanf(%d,&init);k=1;while(k)printf(*20126090*n);printf(* 1.先来先服务(FCFS) *n);printf(* 2.最短寻道时间优先(SSTF) *n);printf(* 3.扫描算法(SCAN) *n);printf(* 4.循环算法(C-SCAN) *n);printf(* 0.退出 *n);printf(*n);printf(请在下面输入您的选择:);scanf(%d,&k);switch(k)case 1:FCFS(a,n,init);break;case 2:SSTF(a,n,init);break;case 3:k1=1; while(k1) printf(*20126090*n); printf(* 1.移动臂由里向外 *n); printf(* 2.移动臂由外向里 *n); printf(* 0.返回上一层 *n); printf(*n); printf(请在下面输入您的选择:); scanf(%d,&k1); switch(k1) case 1:SCAN1(a,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广告代理合同范文协议书5篇
- 2025年航空航天氢能应用技术专利布局分析报告
- 企业劳动合同签订流程指引
- 四年级作文阅读训练大全
- 企业货物运输保险合同范本模板
- 医院文化建设活动策划案
- 医疗机构病历管理规范与案例
- 消费心理学在销售中的应用
- 土建劳务承包合同标准条款解析
- 零售行业客户投诉处理标准操作流程
- 公路交通安全设施工高级工培训内容
- 第三章转录及转录调控
- GB/T 7193-2008不饱和聚酯树脂试验方法
- GB/T 3810.3-2016陶瓷砖试验方法第3部分:吸水率、显气孔率、表观相对密度和容重的测定
- GB/T 3141-1994工业液体润滑剂ISO粘度分类
- 癌症病人三阶梯止痛治疗原则标准课件
- 颅脑损伤患者护理查房课件
- 重要环境污染物及环境疾病课件
- 《嵌入式技术应用》课程标准
- 部编本语文五年级上册第一单元教材解读
- 医院放疗科护理记录(模板)
评论
0/150
提交评论