计算机操作系统》课外实践报告一、实验目标:通过设计一个磁盘调度模拟系统,从而使磁盘调度算法更加形象化,容易使人理解,使磁盘调度的特点更简单明了,能使使用者加深对先来先服务算法、最短寻道时间优先算法、扫描算法以及循环扫描算法等磁盘调度算法的理解。二、实验要求系统主界面可以灵活选择某种算法,算法包括:先来先服务算法(FCFS)、最短寻道时间优先算法(SSTF)、扫描算法(SCAN)、循环扫描算法(CSCAN)。三•实践内容简要描述1、实践环境windows2000/xp,visualc2、算法思路磁盘设备在工作时以恒定的速率旋转。为了读或写,磁头必须能移动到所要求的磁道上 ,并等待所要求的扇区开始位置旋转到磁头下,然后或开始读或写数据。故可把磁盘访问时间分成以下三部分。(1) 寻道时间 Ts这是把磁头移动到指定磁道上所经历的时间。该时间是启动磁臂的时间 s 与磁头移动 n 条磁道所花费的时间之和,即Ts=m*n+s其中,m 是一常数,与磁盘驱动器的速度有关。对于一般磁盘,m 二;对于髙速磁盘,m〈二,磁臂的启动时间+约为加 s。这样,对于一般的温盘,对于一般的温盘,其寻道时间将随着寻道距离的增加而增大,大体上是 5~30ms。(2) 旋转延迟时间 Tr这是指定扇区移动到磁头下面所经历的时间。不同的磁盘类型中,旋转速度至少相差一个数量级,如软盘为 300r/min,硬盘一般为 7200~15000r/min,甚至更髙。对于磁盘旋转延迟时间而言,如硬盘,旋转速度为 15000r/min,每转需时 4ms,平均旋转延迟时间 Tr 为 2ms;而软盘,其旋转速度为 300r/min 或 600r/min,这样,平均 Tr 为 50~100ms。(3) 传输时间 Tt这时指把数据从磁盘读出或向磁盘写入数据所经历的时间。Tt 的大小与每次所读/写的字节数 b 和旋转速度有关:Tt=b/(r*N)其中,r 为磁盘每秒钟的转数;N 为一条磁道上的字节数,当一次读/写的字节数相当于半条磁道上的字节数时,T3 与 T2 相同。因此,可将访问时间 Ta 表示为Ta=Ts+1/(2*r)+b/(r*N)由上式可以看出,在访问时间中,寻道时间和旋转延迟时间基本上都与所读/写数据的多少无关,而且它通常占据了访问时间中的大头。磁盘是可供多个进程共享的设备,当有多个进程都要求访问磁盘时,应采用一种最佳调度算法,以使各进程对磁盘的平均访问时间最小。由于在访问磁盘的时间中,主要是寻道时间,因此,磁盘调度的目标是使磁盘的平均寻道时间最少。现在我们考虑平均寻道长度:所有磁道所需移动距离之和除以总的所需...