1. C-SCAN 磁盘调度算法:
C-SCAN算法,又称环形电梯算法,是SCAN算法的改进版。在该算法中,头指针从磁盘的一端开始向另一端移动,服务于其间的所有请求。到达另一端后,头部反转方向并转到起点。然后它以与以前相同的方向满足剩余的请求。与 SSTF 不同的是,它只能处理一个方向的请求。
例子 –
考虑一个有 200 个磁道 (0-199) 的磁盘,磁盘队列的 I/O 请求顺序如下:
98, 183, 40, 122, 10, 124, 65
读/写磁头的当前磁头位置为 53,将向右移动。使用 C-SCAN 算法计算读/写磁头的磁道移动总数。
总的头部运动,
= (65-53)+(98-65)+(122-98)+(124-122)+(183-124)
+(199-183)+(199-0)+(10-0)+(40-10)
= 395
2. SSTF 磁盘调度算法:
SSTF 代表 Shortest Seek Time First,顾名思义,它服务于最接近当前头部或指针位置的请求。在这个算法中,头指针的方向很重要。如果请求之间出现联系,则头部将在其正在进行的方向上为请求提供服务。与 C-SCAN 不同,SSTF 算法在总寻道时间上非常有效。
例子 –
考虑一个有 200 个磁道 (0-199) 的磁盘,磁盘队列的 I/O 请求顺序如下:
98, 183, 40, 122, 10, 124, 65
读/写磁头的当前磁头位置为 53,并将向右移动。使用SSTF算法计算读/写磁头的磁道移动总数。
总的头部运动,
= (65-53)+(65-40)+(40-10)
+(98-10)+(122-98)+(124-122)+(183-124)
= 240
C-SCAN 和 SSTF 磁盘调度算法的区别:
S.No. | C-SCAN | SSTF |
---|---|---|
1. | C-SCAN algorithm services the requests only in one direction. | SSTF algorithm can handle the requests in both directions. |
2. | This algorithm causes more seek time as compared to SSTF. | In SSTF algorithm, there is an overhead of finding closest request. |
3. | Performance of C-SCAN is far better than SSTF. | Whereas SSTF lags in performance. |
4. | C-SCAN algorithm provides low variance in average waiting time and response time. | Whereas SSTF provides high variance in average waiting time and response time. |
5. | C-SCAN algorithm will never cause starvation to any requests. | SSTF algorithm can cause starvation. |