2

Если есть магнитный диск следующим образом:

Среднее время поиска: 12 мс

Скорость вращения: 3600 об / мин

Скорость передачи: 3,5 МБ / с

Количество секторов на дорожку: 64

Размер сектора: 512 байт

Перегрузка контроллера: 5,5 мс

Какое среднее время для чтения одного сектора? Я не уверен, как / почему 2 части рассчитаны.

Нам нужно знать:

  Seek time: 12 ms
  Average rotational delay: The answer here should be 8.3 but why? 60000/7200 would indeed give me 8.3 but why do I need to double the 3600?
  Transfer time: Not sure what to do here. Sector size is 512 bytes and rate is 3.5 MB/sec -- what do I need to calculate here? 
  Overhead: 5.5ms

Время доступа к диску: я думаю, что ответ около 25 мс

В результате (время поиска) 12 мс + (средняя задержка вращения) 8,3 + (время передачи)? + (накладные расходы) 5,5 мс.

1 ответ1

1

Нам нужно знать:

Время поиска: 12 мс (приведено в тексте)

Средняя задержка вращения: 3600 об / мин = 60 об / с или 16,7 мс / об. Среднее значение равно половине или 8,3 мс.

Время передачи: 512 / 3,5 МБ / с = 146 мкс - однако на самом деле чтение сектора займет немного больше, поскольку на диске 64 сектора, и диск вращается один раз каждые 16,7 мс, каждый сектор будет занимать 16,7 мс / 64 = 260 мкс для чтения. Поскольку это больше, чем время передачи, это цифра для использования.

Накладные расходы: 5,5 мс (приведены в тексте)

Время доступа к диску:

Время поиска (12 мс) + средняя задержка вращения (8,3 мс) + время чтения сектора (260 мкс) + служебная информация (5,5 мс) = 26,1 мс

Возможно, в зависимости от того, как работает контроллер диска, сектор может быть считан в аппаратный буфер (260 мкс), а затем перенесен в память (146 мкс) как две отдельные операции, и в этом случае ответ будет 26,2 мс.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .