2

假设磁盘是空闲的,但有一个读头在空闲之前的方向。(假设读头在第 5 扇区,之前读过第 1 扇区,但现在没有请求。)当请求到来时,读头会继续向之前的方向前进,还是可以选择另一个方向?(假设一个请求来自第 4 扇区,在示例中,它是否必须继续正向,或者它是否可以立即开始反转?) LOOK 会简单地返回,但 SCAN 是否应该一直走到最后?

另外,假设我正在向外(从 1 到 100)前进并且我正在前往第 90 扇区但在我到达那里之前出现另一个请求,它位于 mi 当前位置和第 90 扇区之间,我是否阅读该请求然后前往 90,或者我要一直跑到 90,然后再回去吗?

4

1 回答 1

1

对于您的第一个场景(您没有挂起的 I/O,磁盘位于第 5 列)向外移动并且对第 4 列的请求来了:

  • 使用 SCAN 时,磁盘的磁头仍需要转到最后一个柱面,然后返回第 4 柱面
  • 使用 LOOK,因为没有更多请求,它可以将方向反向到第 4 缸的服务请求

在您的第二种情况下(您正朝 90 号气缸前进,但在您到达那里之前,您的当前位置和 90 号气缸之间会出现另一个请求):

在这种情况下,无论是 SCAN 还是 LOOK,您都可以为位于当前头部位置下的所有等待服务的请求提供服务。因此,在您的示例中,它将在服务第 90 缸的请求之前服务第二个请求。

于 2012-06-20T18:46:43.677 回答