先决条件–磁盘调度算法
1. SCAN磁盘调度算法: SCAN磁盘调度算法也称为电梯算法。这样, 头或指针可以在两个方向上移动, 即, 磁盘臂开始从磁盘的一端移动到另一端, 为所有请求提供服务, 直到它到达磁盘的另一端。到达另一端后, 头部移动方向反转, 并进一步继续处理请求。
问题在于, 与用于请求位置的C-SCAN调度算法相比, 它需要更长的等待时间。
范例:
假设头从53开始, 并开始向左端移动。
头部总动作
= (53-37)+(37-14)+(14-0)+(65-0)+(67-65)
+(98-67)+(122-98)+(124-122)+(183-124)
= 236
2. C-SCAN磁盘调度算法:
在C-SCAN磁盘调度算法中, 与SCAN算法唯一的区别在于, 它旨在提供更均匀的等待时间。在这种情况下, 头或指针在单个方向上工作, 即, 它一直扫描到一个方向的请求, 一旦到达终点, 它就会跳回到另一端, 并在同一方向上为请求提供服务, 这与SCAN不同在反向和正向。
例子:
假设头部从53开始并开始向右端移动。
头部总动作
= (65-53)+(67-65)+(98-67)+(122-98)+(124-122)
+(183-124)+(199-183)+(199-0)+(14-0)+(37-14)
= 382
让我们看看SCAN和C-SCAN磁盘调度算法之间的区别–
序号 | SCAN调度算法 | C-SCAN调度算法 |
---|---|---|
1. | 它也被称为电梯算法。 | 它也被称为圆形电梯算法。 |
2. | 它为两个方向的所有请求提供服务。 | 它仅在一个方向上处理请求。 |
3. | 在上面的SCAN算法示例中, 磁头开始从53向左移动, 以服务于该方向上的所有请求, 然后到达左端, 它将磁头方向更改为右, 并进一步将所有请求从0变为199。 | 在上面的C-SCAN算法示例中, 磁头从53向右开始, 为该方向上的所有请求提供服务, 到达右端后, 它并没有反转其方向, 相反, 磁头跳到磁盘的另一端, 为磁盘上的请求提供服务对。 |
4. | 扫描算法提供了更长的等待时间来请求位置。 | C-SCAN算法在通过电梯算法请求位置时提供了均匀的等待时间。 |
5. | 它具有较高的吞吐量, 并提供了较低的方差响应时间。 | 该算法提供了更好的响应时间。 |