全球旧事资料 分类


磁盘调度算法程序设计
课程名称
一、程序设计的目的和要求
操作系统课程设计
磁盘是经常使用的一个外设,对磁盘数据的寻道时间的长短直接影响机器的整体运行速度,本设计要求用C语言或高级语言编写程序模拟实现磁盘调度的常用算法。以加深对磁盘调度常用算法的理解和实现技巧。
二、课程设计环境要求课程设计环境要求
1、硬件环境I
telCroe2DuoCPU2、软件环境
Wi
dows7TurboC20
三、设计任务介绍及系统需求分析
1、系统分析设备的动态分配算法与进程调度相似,也是基于一定的分配策略的。常用的分配策略有先请求先分配、优先级高者先分配等策略。在多道程序系统中,低效率通常是由于磁盘类旋转设备使用不当造成的。操作系统中,对磁盘的访问要求来自多方面,常常需要排队。这时,对众多的访问要求按一定的次序响应,会直接影响磁盘的工作效率,进而影响系统的性能。访问磁盘的时间因子由3部分构成,它们是查找(查找磁道)时间、等待(旋转等待扇区)时间和数据传输时间,其中查找时间是决定因素。因此,磁盘调度算法先考虑优化查找策略,需要时再优化旋转等待策略。2、系统设计:1先来先服务.FirstCome,FirstServed,FCFS这是一种简单的磁盘调度算法。它根据进程请求访问磁盘的先后次序进行调度。此算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出
f现某一进程的请求长期得不到满足的情况。但此算法由于未对寻道进行优化,致使平均寻道时间可能较长。2最短寻道时间优先ShortestSeekTimeFirst,SSTF该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短,但这种调度算法却不能保证平均寻道时间最短。3扫描SCAN算法SCAN算法不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。例如,当磁头正在自里向外移动时,SCAN算法所选择的下一个访问对象应是其欲访问的磁道既在当前磁道之外,又是距离最近的。这样自里向外地访问,直到再无更外的磁道需要访问才将磁臂换向,自外向里移动。这时,同样也是每次选择这样的进程来调度,即其要访问的磁道,在当前磁道之内,从而避免了饥饿现象的出现。由于这种算法中磁头移动的规律颇似电梯的运行,故又称为电梯调度算法。
四、概要设计
本系统划分为三个模块:先来先服务算法模块voidFCFSi
tarrayi
tm、最短寻道时间优先算法模块voidSSTFi
tarrayi
tm、扫描算法模块voidSCANi
tarrayi
tm。系统模块r
好听全球资料 返回顶部