SSTF和C-LOOK磁盘调度算法的区别
SSTF磁盘调度算法
SSTF是指最短寻道时间优先。顾名思义,这个算法是为最接近磁头或指针当前位置的任务请求服务的。在这里,磁头的方向在决定磁头的总移动中起着重要作用。如果请求之间出现平局,那么头部将为遇到它的请求提供服务,在它的持续方向上。与C-LOOK不同,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-LOOK 磁盘调度算法
C-LOOK是LOOK和SCAN算法的修改版。在这个算法中,磁头从一个方向的第一个请求开始,向另一端的最后一个请求移动,为这中间的所有请求服务。在到达一端的最后一个请求后,头部向另一方向跳动,并向剩余的请求移动,然后以相同的方向满足它们。与SSTF不同的是,它不提供离头部或指针当前位置最近的任务请求。
例子
考虑一个有200个轨道(0-199)的磁盘,磁盘队列中的I/O请求按以下顺序排列:
98, 183, 40, 122, 10, 124, 65
读/写头的当前位置是53,将向右移动。用C-LOOK算法计算读/写头的总轨迹移动次数。
总的头部运动 –
= (65-53)+(98-65)+(122-98) +(124-122)+(183-124)+(183-10)+(40-10)
= 333
SSTF和C-LOOK磁盘调度算法的区别 :
编号 | SSTF磁盘调度算法 | C-LOOK磁盘调度算法 |
---|---|---|
1 | SSTF算法可以操纵两个方向的请求。 | C-LOOK算法只对一个方向的请求进行处理。 |
2 | 在SSTF算法中,有一个寻找最近的请求的负担。 | 与SSTF相比,这种算法会导致更多的搜索时间。 |
3 | SSTF算法在性能上落后。 | C-LOOK的性能远远好于SSTF。 |
4 | 在上面的SSTF算法的例子中,头部从53开始,分析离它最近的请求,然后朝那个方向移动。 | 在上面的C-LOOK算法的例子中,头从53号开始移动,在右边的方向上服务所有的请求,直到它到达一端的最后一个请求。然后,它跳到剩余的请求,并只在右边方向上为它们服务。 |
5 | SSTF算法会导致饿死。 | C-LOOK算法不会导致任何请求的饿死。 |
6 | SSTF在平均等待时间和响应时间上有很大的差异。 | C-LOOK算法在平均等待时间和响应时间上提供了低差异。 |