一、磁盘结构
- 盘面:一个磁盘有多个盘面
- 磁道:盘面上的圆形带状区域,一个盘面可以有多个磁道
- 扇区: 磁道上的一个弧段,一个磁道可以有多个扇区,它是最小的物理存储单位。
- 磁头:与盘面非常接近,能将盘面上的磁场转换为电信号,或者将电信号转换为磁信号
- 制动手臂:用于在磁道间移动磁头。
- 主轴:使整个盘面转动。
二、磁盘调度算法
读写一个磁盘块的时间的印象因素主要有:
- 旋转时间
- 寻道时间
- 实际数据传输时间
其中寻道时间最长,因此磁盘调度的主要目标是使磁盘的平均寻道时间最短。
先来先服务(FCFS)
按照磁盘请求顺序进行调度,优点是公平简单,缺点会使平均寻道时间较长。
最短寻道时间优先(SSTF)
优先调度与当前磁头所在磁道最近的磁道。
虽然平均寻道时间比较低,但是不够公平。如果新到达的磁道请求总比一个在等待的磁道请求近,那么在等待的磁道请求会一直持续下去,也就是出现饥饿现象。两端的磁道请求更容易出现饥饿现象。
电梯算法
电梯总是保持一个方向运行,直到该方向没有请求为止,然后改变运行方向。
电梯算法(扫描算法)和电梯的运行过程类似,总是按照一个方向来进行磁盘调度,直到该方向上没有未完成的磁盘请求,然后改变方向。