SCAN 磁盘调度模拟实现.doc

SCAN 磁盘调度模拟实现.doc

ID:56344116

大小:31.13 KB

页数:8页

时间:2020-06-12

SCAN 磁盘调度模拟实现.doc_第1页
SCAN 磁盘调度模拟实现.doc_第2页
SCAN 磁盘调度模拟实现.doc_第3页
SCAN 磁盘调度模拟实现.doc_第4页
SCAN 磁盘调度模拟实现.doc_第5页
资源描述:

《SCAN 磁盘调度模拟实现.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、信息科学与电气工程学院上机实验报告学号:姓名:班级:课程:操作系统指导教师:时间:2017年11月29日SCAN磁盘调度模拟实现一.实验目的1)理解磁盘调度相关理论;2)掌握多种磁盘调度算法;3)彻底掌握SCAN磁盘调度算法。二、实验内容本实验主要针对操作系统中磁盘调度相关理论进行实验。要求实验者设计一个程序,该程序模拟操作系统的磁盘调度,调度采用SCAN算法。1)设计磁盘调度请求队列(请求数≥10);2)设定单位寻道时间;3)可动态修改发出磁盘请求的时间和磁道号;4)实现SCAN磁盘调度算法;5)实现动态调度并输出调度序列。#include"stdafx.h"

2、#include#include#include#include#definemaxsize1000/*********************判断输入数据是否有效**************************/intdecide(charstr[])//判断输入数据是否有效{inti=0;while(str[i]!=''){if(str[i]<'0'

3、

4、str[i]>'9'){return0;break;}i++;}returni;}/******************将

5、字符串转换成数字***********************/inttrans(charstr[],inta)//将字符串转换成数字{inti;intsum=0;for(i=0;i

6、or(j=i+1;jcidao[j]){temp=cidao[i];cidao[i]=cidao[j];cidao[j]=temp;}}cout<<"排序后的磁盘序列为";for(i=0;i

7、的移动方向{intk=1;intnow,l,r,d;inti,j,sum=0;inta;charstr[100];floatave;cidao=bubble(cidao,m);//调用冒泡排序算法排序cout<<"请输入当前的磁道号";D:cin>>str;//对输入数据进行有效性判断a=decide(str);if(a==0){cout<<"输入数据的类型错误,请重新输入"<

8、各//请求服务,此情况同最短寻道优先{cout<<"磁盘扫描序列为";for(i=m-1;i>=0;i--)cout<=now)//若当前磁道号小于请求序列中最小者则直接由内向外依次给予各请//求服务,此情况同最短寻道优先{cout<<"磁盘扫描序列为";for(i=0;icidao[0]&&now

9、大者{while(cidao[k]>d;if(d==0)//选择移动臂方向向内则先向内扫描{cout<<"磁盘扫描序列为";for(j=l;j>=0;j--){cout<

10、//选择移动臂方向向外

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

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

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