操作系统 -磁盘调度

操作系统 -磁盘调度

ID:46444456

大小:96.94 KB

页数:7页

时间:2019-11-23

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

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

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

2、使用的数据结构及符号说明。2、给出主要算法的流程图。3、给出程序清单并附上注释。4、给出测试数据和运行结果。#include#include#includeusingnamespacestd;constintMaxNumber=100;intTrackOrder[MaxNumber];intMoveDistance[MaxNumber];//----移动距离;intFindOrder[MaxNumber];//-----寻好序列。doubleAver

3、ageDistance;//-----平均寻道长度booldirection;//-----方向true时为向外,false为向里intBeginNum;//----开始磁道号。intM;//----磁道数。intN;//-----提出磁盘I/O申请的进程数intSortOrder[MaxNumber];//----排序后的序列boolFinished[MaxNumber];voidInith(){cout<<"请输入磁道数(最大磁盘数目):";cin>>M;cout<<"请输入提出磁盘I/O申请的进程

4、数:";cin>>N;cout<<"请依次输入要访问的磁道号:";for(inti=0;i>TrackOrder[i];for(intj=0;j>BeginNum;for(intk=0;k

5、进程申请的磁道按从小到大排列=================voidSort(){//------冒泡排序inttemp;for(inti=N-1;i>=0;i--)for(intj=0;jSortOrder[j+1]){temp=SortOrder[j];SortOrder[j]=SortOrder[j+1];SortOrder[j+1]=temp;}}}//============先来先服务==============================

6、===voidFCFS(){inttemp;temp=BeginNum;//--------将BeginNum赋给temp作为寻道时的当前所在磁道号for(inti=0;i

7、==最短寻道法=============================voidSSTF(){inttemp,n;intA=M;temp=BeginNum;//--------将BeginNum赋给temp作为寻道时的当前所在磁道号for(inti=0;i

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

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

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

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