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

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

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
Java

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
Java

下面来看看SCAN和C-SCAN磁盘调度算法的区别——

S. No. SCAN 调度算法 C-SCAN 调度算法
1 SCAN又称电梯算法。 C-SCAN也被称为圆形电梯算法。
2 SCAN服务于两个方向的所有请求。 C-SCAN只为一个方向的请求提供服务。
3 在上面的 SCAN 算法示例中,head 从 53 开始向左移动,为该方向的所有请求提供服务,并进一步到达左端,将 head 方向更改为向右,并进一步服务从 0 到 199 的所有请求。 上面的 C-SCAN 算法示例,磁头从 53 开始向右处理该方向上的所有请求,到达右端后,它不会反转其方向,而是跳转到磁盘的另一端,服务于其右侧的请求。
4 SCAN算法提供更长的等待时间来请求位置。 C-SCAN 算法在通过电梯算法请求位置时提供统一的等待时间。
5 SCAN具有更高的吞吐量,并提供低方差响应时间。 C-SCAN算法提供了更好的响应时间。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册