SCAN和CSCAN磁盘调度算法之间有什么区别?

2021年3月24日14:00:06 发表评论 7,541 次浏览

先决条件–磁盘调度算法

1. SCAN磁盘调度算法: SCAN磁盘调度算法也称为电梯算法。这样, 头或指针可以在两个方向上移动, 即, 磁盘臂开始从磁盘的一端移动到另一端, 为所有请求提供服务, 直到它到达磁盘的另一端。到达另一端后, 头部移动方向反转, 并进一步继续处理请求。

问题在于, 与用于请求位置的C-SCAN调度算法相比, 它需要更长的等待时间。

范例:

假设头从53开始, 并开始向左端移动。

SCAN和CSCAN磁盘调度算法之间的区别1

头部总动作

= (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开始并开始向右端移动。

SCAN和CSCAN磁盘调度算法之间的区别2

头部总动作

= (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. 它具有较高的吞吐量, 并提供了较低的方差响应时间。 该算法提供了更好的响应时间。

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: