C语言磁盘调度算法FCFSSSTFSCANCSCAN_第1页
C语言磁盘调度算法FCFSSSTFSCANCSCAN_第2页
C语言磁盘调度算法FCFSSSTFSCANCSCAN_第3页
C语言磁盘调度算法FCFSSSTFSCANCSCAN_第4页
C语言磁盘调度算法FCFSSSTFSCANCSCAN_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、操作系统原理上机作业(报告)作业编号7题目磁盘调度算法作业要求【题目要求】通过编程仿真几种常见的磁盘调度算法,包括:先来先 服务(FCFS)、最短寻道时间优先(SSTF)、扫描算法(SCAN,初始为从 里向外移动)和循环扫描算法(CSCAN,初始为由里向外移动并服务, 归零时返回到最里侧请求的磁道)。磁道访问请求序列为:55,58,39,18,90,160,150,38,184第1页共7页(1)模拟磁盘调度过程并计算磁头的总移动的磁道数(总寻道长度)。(2)计算磁头的平均移动的磁道数(平均寻道长度)。其菜单如下:磁盘调度算法实现*0.退出FCFS算法实现SSTF算法实现SCAN算法实现CSCA

2、N 算法显示对比表【实验要求】可选编程语言:C/C+/Java/C#/Python;实现在同一个程序文件中(C/C+); 请适当注释;报 告正文(运行屏幕截图及源代码)截屏第2页共7页k*:*k:*x*磁盘调度算法买4和*”*1=. 退匕1. FCF5茸达美现4. CECAN 箕/J,显示对比去清输.kp民对算法实现结果如下: W寻:亘五度藉口阡均等道长度:55.33二:!:!: 算法实现结果如下: 目寻ii长度:2韭 平均寻道长度:2T.EEEE54 式AIO:法突现结果如F 医寻号长度:更口 平均寻毒长度:2工777773 忤3算法实现结果如下: 总寻道长度:322年均寻道长度T5.777

3、7我I+:K*K:+*k:i*丽兴:.周憎苴注且期*M:+*k:i*+:K* 1=. 退匕FCF:算;士民现 障算法其现 宜注生视CSC AN算法 HJod LI 方青输M 1代由算法实现结果如下: 后寻诣长度,期干均弓道长度:55.33二:!:!:kx*K*kd*K*硬盘凋度筲生其现*K*k:*x:*:*:II.2.p.kx*K*kd*K*硬盘凋度筲生其现*K*k:*x:*:*:II.2.p.4.FLF3茸法妥现.退匕1.於17筲主工狈 X出I算这工,现 鹿白K箕走 件水高比元监TF苴法实切结果如下: 国寻道长度:2曲 平均寻道长摩:丁.555元k才未未*电力本.*杆用盘调度算法实现5M.5

4、M米.林 =口 .退出工出筲生且现 匿TF苴;士医现 3tM算法三现 CTK宜去显示对比表清福:B5CAW算法突现结果如F; 总寻道七度:血中均寻迫千度丁一 7T777F曲场:.周憎苴在鼻驯*M:+*k:*K* 卜=L 退匕1.曲场:.周憎苴在鼻驯*M:+*k:*K* 卜=L 退匕1.FCFS算:i共现袅IF真注买现4.犷心百注其顶 CECAN箕达 显示对比表2.附录。#include #include第3页共7页 static int track9 = 55, 58, 39, 18, 90, 160, 150, 38, 184; int FCFS()int i, sum = 0, adres

5、s = 100;for(i = 0; i 9; i+)sum += abs(tracki - adress);adress = tracki;return sum;int Get_SSTF_index(int t, int *flag)int i, f = 0, min = 10000, juli = 0, l;for(i = 0; i 0 & juli min & flagi =0)min = juli; f = i;return f;bool IsEmpty(int *flag)int i = 0;for(i = 0; i = 0; j-)for(i = 0; i ai + 1)ai =

6、ai + ai + 1;ai + 1 = ai - ai + 1;ai = ai - ai + 1;二int track19;int i, sum = 0, adress = 100;for(i = 0; i 9; i+)track1i = tracki;Sort(track1);for(i = 6; i = 0; i-)sum += abs(track1i - adress);adress = track1i;第5页共7页return sum;)int CSCAN()(int track19;int i, sum = 0, adress = 100; for(i = 0; i 9; i+)(

7、track1i = tracki;)Sort(track1);for(i = 6; i 9; i+) (sum += abs(track1i - adress); adress = track1i;)for(i = 0; i 6; i+)(sum += abs(track1i - adress);adress = track1i;)return sum;) int main()(int flag;while(1) (printf(* 磁盘调度算法实现 *n);printf(=);printf(0.退出n1. FCFS算法实现由2. SSTF算法实现由3. SCAN算法实现An);n4. CSC

8、AN算法n5.显示对比表n); printf(= printf(请输入:n); scanf(%d,&flag);An);switch(flag) (case 0 :return 0;(printf(FCFS算法实现结果如下:n总寻道长度:dn平均寻道长 度:fnnn,FCFS(),FCFS()/9.0);第6页共7页 break;)(printf(SSTF算法实现结果如下:n总寻道长度:dn平均寻道长 度:fnnn”,SSTF(),SSTF()/9.0);break;)(printf(SCAN算法实现结果如下:n总寻道长度:dn平均寻道 长度:fnnn”,SCAN(),SCAN()/9.0);break;)(printf(CSCAN算法实现结果如下:n总寻道长度:dn平均寻道 长度:fnnn”,CSCAN(),CSCAN()/9.0);break;)(printf(FCFS算法实现结果如下:n总寻道长度:dn平均寻道长 度:fn,FCFS(),FCFS()/9.0);printf(SSTF算法实现结果如下:n总寻道长度:dn平均寻道长 度:fn,SSTF(),SSTF()/9.0);printf(SCAN算法实现结果如下:n总寻道长度:dn平均寻道 长度:fn,SCA

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论