📜  SSTF 完整表格

📅  最后修改于: 2021-09-24 01:53:18             🧑  作者: Mango

SSTF 是Shortest Seek Time First (SSTF) 的缩写,它是一种磁盘调度算法。

它选择最接近当前头部位置的请求,然后将头部移开以服务其他请求。这是通过选择从当前磁头位置具有最少寻道时间的请求来完成的。

SSTF-全表格

即使这些请求不是队列中的第一个请求,SSTF 调度优先权会给予那些具有最短搜索的进程。为了实现这一点,在队列中预先计算每个请求的寻道时间,然后根据请求的寻道时间调度请求。

SSTF 不能确保公平性,因为它的搜索模式往往是高度本地化的,因此可能会导致无限期推迟。 SSTF 就像最短作业优先 (SJF),因为它可以防止远程请求在高负载下被服务,这可以称为饥饿。例子:
考虑一个有 200 个磁道 (0-199) 的磁盘,磁盘队列的 I/O 请求顺序如下: 93, 176, 42, 148, 27, 14, 180. Read\Write 的当前磁头位置head 为 55。使用 SSTF 计算 Read/Write head 的磁道移动总数。

总寻道时间,

= (55-14) + (180-14)
= 207 

优点:

  1. 吞吐量优于 FCFS。
  2. 由于头部运动次数减少,平均响应时间被最小化。

缺点:

  1. 因为我们提前计算了每个请求的寻道时间,所以开销很大。
  2. 如果一个请求的寻道时间比队列中的其他请求长,即使它可能首先到达队列,就会发生请求饥饿。