- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
磁盘调度算法 fcfssstf课程设计报告
学 号:
课 程 设 计
题 目 磁盘移臂调度过程模拟设计 学 院 计算机科学与技术 专 业 计算机科学与技术 班 级 姓 名 指导教师
2011 年 01 月 18 日
课程设计任务书
学生姓名: 专业班级: 计算机 班
指导教师: 工作单位: 计算机科学与技术学院
题 目: 磁盘移臂调度过程模拟设计——先来先服务法、最短寻道时间优先算法
初始条件:
1.预备内容:阅读操作系统的文件管理章节内容,理解有关文件组织形式、存储设备的概念。
2.实践准备:掌握一种计算机高级语言的使用。
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1.编程序模拟磁盘调度的过程,采用指定算法,模拟并输出存取臂的移动顺序,并计算存取臂移动的磁道总数。 能够处理以下的情形:
⑴ 可根据需要输入当前磁头的位置,磁头移动方向;
⑵ 能够输入柱面数,磁道访问序列等参数,并能够显示调度结果(磁盘访问请求的磁道号以及磁头移动的总磁道数)。
2.设计报告内容应说明:
⑴ 需求分析;
⑵ 功能设计(数据结构及模块说明);
⑶ 开发平台及源程序的主要部分;
⑷ 测试用例,运行结果与运行情况分析;
⑸自我评价与总结:
i)你认为你完成的设计哪些地方做得比较好或比较出色;
ii)什么地方做得不太好,以后如何改正;
iii)从本设计得到的收获(在编写,调试,执行过程中的经验和教训);
iv)完成本题是否有其他方法(如果有,简要说明该方法);
时间安排:
设计安排一周:周1、周2:完成程序分析及设计。
周2、周3:完成程序调试及测试。
周4、周5:验收、撰写课程设计报告。
(注意事项:严禁抄袭,一旦发现,一律按0分记)
指导教师签名: 年 月 日
系主任(或责任教师)签名: 年 月 日
磁盘移臂调度过程模拟设计
——先来先服务法、最短寻道时间优先算法
1 需求分析
编程序模拟磁盘调度的过程,采用先来先服务算法和最短寻道时间优先算法,模拟并输出存取臂的移动顺序,并计算存取臂移动的磁道总数。 能够处理以下的情形:
⑴ 可根据需要输入当前磁头的位置,磁头移动方向;
⑵ 能够输入柱面数,磁道访问序列等参数,并能够显示调度结果(磁盘访问请求的磁道号以及磁头移动的总磁道数)。
2功能设计
2.1 流程图
图1 执行流程图
2.2 数据结构
1) 数组定义
本次课程设计主要用到的数据结构是数组。
int arr[MAX]; //用来存放输入的磁道访问序列.
bool flag[MAX]; //在SSTF算法中,用来为序列中元素做标记,所有元素赋初值为false,当某元素被确定为与当前元素距离最短时,其值置为true.
2) 主要常量及变量说明
#define MAX 50 //设置存放输入访问序列的数组元素的最大个数为50
int count; //用来存放输入的磁道访问序列的磁道个数
int now; //用来存放磁头的起始位置
int track; //用来存放磁盘中的总磁道数,用于越界判断
int sum=0; //用来保存磁头移动的总道数
int min=track; //SSTF算法中用来存放序列中与当前研究的磁道的最短距离,初值为最大磁道数
int mark=-1; //记录序列中与当前研究磁道距离最短的磁道的数组下标
int temp=now; //用来存放当前研究的磁道,初值为now
2.3 模块说明
2.3.1 先来先服务算法
(1)算法简介
思想:按访问请求到达的先后次序服务
优点:简单,公平
缺点:效率不高,相临两次请求可能会造成最内到最外的柱面寻道,使磁头反复移动,增加了服务时间,对机械也不利
(2)算法描述
void FCFS() //按输入顺序将磁道序列输出,并计算磁头移动总道数
{
sum=|a[0]-now|;
输出now;
for(i=0;icount-1;i++)
{
输出a[i];
sum=sum+|a[i+1]-a[i]|;
}
输出a[i];
输出sum;
}
2.3.2 最短寻道时间优先算法
(1)算法简介
思想:优先选择距当
文档评论(0)