操作系统-磁盘调度.doc

操作系统-磁盘调度.doc

ID:48145822

大小:101.38 KB

页数:7页

时间:2020-01-21

操作系统-磁盘调度.doc_第1页
操作系统-磁盘调度.doc_第2页
操作系统-磁盘调度.doc_第3页
操作系统-磁盘调度.doc_第4页
操作系统-磁盘调度.doc_第5页
资源描述:

《操作系统-磁盘调度.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.磁盘调度算法一、实验目的1、对磁盘调度的相关知识作进一步的了解,明确磁盘调度的原理。2、加深理解磁盘调度的主要任务。3、通过编程,掌握磁盘调度的主要算法。二、实验内容和要求1、对于如下给定的一组磁盘访问进行调度:请求服务到达ABCDEFGHIJK访问的磁道号305010018020901507080101602、要求分别采用先来先服务、最短寻道优先以及电梯调度方法进行调度。3、要求给出每种算法中磁盘访问的顺序,计算出平均移动道数。4、假定当前读写头在90号,向磁道号增加的方向移动。三、实验报告1、程序中使用的数据结构及符号说明。2、给出主要算法的流程图。3、给出程序清单并附上注释。4、

2、给出测试数据和运行结果。#include#include#includeusingnamespacestd;constintMaxNumber=100;intTrackOrder[MaxNumber];intMoveDistance[MaxNumber];//----移动距离;intFindOrder[MaxNumber];//-----寻好序列。doubleAverageDistance;//-----平均寻道长度booldirection;//-----方向true时为向外,false为向里intBeginNum;//----开始

3、磁道号。intM;//----磁道数。intN;//-----提出磁盘I/O申请的进程数intSortOrder[MaxNumber];//----排序后的序列boolFinished[MaxNumber];..voidInith(){cout<<"请输入磁道数(最大磁盘数目):";cin>>M;cout<<"请输入提出磁盘I/O申请的进程数:";cin>>N;cout<<"请依次输入要访问的磁道号:";for(inti=0;i>TrackOrder[i];for(intj=0;j

4、cin>>BeginNum;for(intk=0;k=0;i--)for(intj=0;jSortOrder[j+1]){temp=SortOrder[j];SortOrder[j]=So

5、rtOrder[j+1];SortOrder[j+1]=temp;}}}//============先来先服务=================================voidFCFS(){inttemp;temp=BeginNum;//--------将BeginNum赋给temp作为寻道时的当前所在磁道号for(inti=0;i

6、]=TrackOrder[i];//-----寻好的赋给寻好序列}}//========最短寻道法=============================voidSSTF(){inttemp,n;intA=M;temp=BeginNum;//--------将BeginNum赋给temp作为寻道时的当前所在磁道号..for(inti=0;i

7、;}elsecontinue;}Finished[n]=true;//-------将已经寻找到的Finished赋值为trueMoveDistance[i]=A;//-------寻道长度temp=TrackOrder[n];//-------当前寻道号。A=M;//-----重置A值FindOrder[i]=TrackOrder[n];//----寻好的赋给寻好序列}}//=====================S扫描算法(电

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

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

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