磁盘移臂调度过程模拟设计-电梯算法_最短寻道时间优先
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学号:
课程设计
题目磁盘移臂调度过程模拟设计
--电梯算法、最短寻道时间优先算法
学院计算机科学与技术学院
专业
班级
姓名
指导教师吴利军
2013 年 1 月15 日
课程设计任务书
学生姓名:
指导教师:吴利军工作单位:计算机科学与技术学院
题目: 磁盘移臂调度过程模拟设计——电梯算法、最短寻道时间优先算法初始条件:
1.预备内容:阅读操作系统的文件管理章节内容,理解有关文件组织形式、存储设备的概念。
2.实践准备:掌握一种计算机高级语言的使用。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1.编程序模拟磁盘调度的过程,采用指定算法,模拟并输出存取臂的移动顺序,并计算存取臂移动的磁道总数。能够处理以下的情形:
⑴可根据需要输入当前磁头的位置,磁头移动方向;
⑵能够输入柱面数,磁道访问序列等参数,并能够显示调度结果(磁盘访问请求的磁道号
以及磁头移动的总磁道数)。
2.设计报告内容应说明:
⑴课程设计目的与功能;
⑵需求分析,数据结构或模块说明(功能与框图);
⑶源程序的主要部分;
⑷测试用例,运行结果与运行情况分析;
⑸自我评价与总结:
i)你认为你完成的设计哪些地方做得比较好或比较出色;
ii)什么地方做得不太好,以后如何改正;
iii)从本设计得到的收获(在编写,调试,执行过程中的经验和教训);
iv)完成本题是否有其他的其他方法(如果有,简要说明该方法);
v)对实验题的评价和改进意见,请你推荐设计题目。
时间安排:
设计安排一周:周1、周2:完成程序分析及设计。
周2、周3:完成程序调试及测试。
周4、周5:验收,撰写课程设计报告。
(注意事项:严禁抄袭,一旦发现,抄与被抄的一律按0分记)
指导教师签名:年月日
系主任(或责任教师)签名:年月日
磁盘移臂调度过程模拟设计
——电梯算法、最短寻道时间优先算法1 课程设计目的与功能
操作系统课程设计,主要是在学习操作系统课程并完成操作系统各部分实验的基础上,对操作系统的整体进行一个模拟,通过实践加深对各个部分的管理功能的认识,进一步分析各个部分之间的联系,以达到对完整系统的理解。有助于提高运用操作系统知识解决实际问题的能力;锻炼实际的编程能力及创新能力;提高调查研究、查阅技术文献、资料以及编写软件设计文档的能力。
本课程设计是通过设计一个磁盘调度模拟系统,深入理解磁盘的工作原理,从而使磁盘调度更加形象化,容易使人理解,使磁盘调度的特点更简单明了,能使使用者加深对磁盘调度算法的理解。具体实现为,运用一门高级编程语言编写程序模拟磁盘调度的过程,采用先来先服务算法和电梯算法,模拟并输出存取臂的移动顺序,并计算存取臂移动的磁道总数。能够处理以下的情形:
(1)可根据需要输入当前磁头的位置,磁头移动方向;
(2)能够输入柱面数,磁道访问序列等参数,并能够显示调度结果(磁盘访问请求的
磁道号以及磁头移动的总磁道数)。
2 需求分析
2.1磁盘的工作原理
磁盘是最典型的直接存取设备。磁盘设备允许文件系统直接存取磁盘上的任意物理块。为了存取一个特定的物理块,磁头将直接移动到所要求的位置上,而不需要像顺序存取那样事先存取其他的物理块。
磁盘机各类很多,但一般由一些磁盘片组成的磁盘组组成。其中每个磁盘片对应
一个装有读写磁头的磁头臂,磁头臂上的两个读写磁头分别对磁盘片的上下两面进行读写。系统在对磁盘进行初始化处理时,把每个磁盘片分割成一些大小相等的扇区。
在磁盘转动时经过读写磁头所形成的圆形轨迹称为磁道。由于磁头臂可沿半径方向移动,因此,磁盘上有多条磁道。另外,人们通常把所有磁盘片的相同磁道称为一个柱面,因此,磁盘上每个物理块的位置可以用柱面号、磁头号和扇区号表示,这些地址和物理块号一一对应。
2.2磁盘的调度算法
操作系统中,对磁盘的访问要求来自多方面,常常需要排队。这时,对众多的访问要求按一定的次序响应,会直接影响磁盘的工作效率,进而影响系统的性能。访问磁盘的时间因子由3部分构成,它们是查找(查找磁道)时间、等待(旋转等待扇区)时间和数据传输时间,其中查找时间是决定因素。因此,磁盘调度算法先考虑优化查找策略,需要时再优化旋转等待策略。主要的磁盘调度算法有下面四种:
(1)先来先服务算法(FCFS):
这是一种比较简单的磁盘调度算法。它根据进程请求访问磁盘的先后次序进行调度。此算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某一进程的请求长期得不到满足的情况。此算法由于未对寻道进行优化,在对磁盘的访问请求比较多的情况下,此算法将降低设备服务的吞吐量,致使平均寻道时间可能较长,但各进程得到服务的响应时间的变化幅度较小。
(2)最短寻道时间优先算法(SSTF):
该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短,该算法可以得到比较好的吞吐量,但却不能保证平均寻道时间最短。其缺点是对用户的服务请求的响应机会不是均等的,因而导致响应时间的变化幅度很大。在服务请求很多的情况下,对内外边缘磁道的请求将会无限期的被延迟,有些请求的响应时间将不可预期。
(3)扫描算法(SCAN),即电梯算法:
扫描算法不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。例如,当磁头正在自里向外移动时,扫描算法所选择的下一个访问对象应是其欲访问的磁道既在当前磁道之外,又是距离最近的。这样自里向外地访问,直