一、磁盘性能
磁盘:
按传输速率分类属于高速设备
按设备共享属性分类属于共享设备
按数据组织分类属于块设备
1.数据的组织和形式
2.磁盘的类型
固定头磁盘
固定头磁盘在每条磁道上都有一个读/写磁头,可进行并行读写,提高了磁盘的I/O速度,固定头磁盘主要用于大容量磁盘上。
移动头磁盘
每个磁面仅有一个磁头,I/O速度较慢,用于中小型磁盘设备。
3.磁盘访问时间
寻道时间Ts
寻道时间是指把磁臂(磁头)移动到指定磁道上所经历的时间。该时间是启动磁臂的时间s与磁头移动n条磁道所花费的时间之和,即Ts=m×n+s。
其中,m是一常数,与磁盘驱动器的速度有关,对一般磁盘, m=0.2;对高速磁盘,m≤0.1, 磁臂的启动时间约为2 ms。 这样,对一般的温盘, 其寻道时间将随寻道距离的增加而增大, 大体上是5~30 ms。
旋转延迟时间Tt
旋转延迟时间是指定扇区移动到磁头下面所经历的时间。对于硬盘,典型的旋转速度大多为5400 r/min,每转需时11.1 ms,平均旋转延迟时间Tτ为5.55 ms;对于软盘,其旋转速度为300 r/min或600 r/min,这样,平均Tτ为50~100 ms。
传输时间Tt
这是指把数据从磁盘读出或向磁盘写入数据所经历的时间。 Tt的大小与每次所读/写的字节数b和旋转速度有关:
其中,r为磁盘每秒钟的转数;N为一条磁道上的字节数, 当一次读/写的字节数相当于半条磁道上的字节数时,Tt与Tτ相同, 因此, 可将访问时间Ta表示为:
二、磁盘调度
1.先来先服务FCFS
按照顺序,先服务先来的数据,先访问先来的磁道号
2.最短寻道时间优先SSTF
动态规划,每次走最短的路线。
3.扫描算法
扫描算法对SSTF算法进行了修改,可防止老进程出现饥饿现象。
4.循环扫描CSCAN算法
5.N-step-SCAN算法
N步SCAN算法是将磁盘请求队列分成若干个长度为N的子队列,磁盘调度按照FCFS算法依次处理这些子队列,处理每个子队列用SCAN算法,一个队列处理好了,再处理下一个队列。 当正在处理某子队列时,如果又出现新的磁盘I/O请求,便将新请求进程放入其他队列,这样就可避免出现粘着现象。 当N值取得很大时,会使N步扫描法的性能接近于SCAN算法的性能; 当N=1时, N步SCAN算法便蜕化为FCFS算法。
6.FSCAN算法
FSCAN算法实质上是N步SCAN算法的简化, 即FSCAN只将磁盘请求队列分成两个子队列。一个是由当前所有请求磁盘I/O的进程形成的队列,由磁盘调度按SCAN算法进行处理。在扫描期间,将新出现的所有请求磁盘I/O的进程, 放入另一个等待处理的请求队列。这样,所有的新请求都将被推迟到下一次扫描时处理。