Не совсем правильно. Контроллер читает информацию посекторно. Вот ЦПУ ему выдал команду на чтение сектора, контроллер докрутив диск до нужного места нашел его, считал, ЦПУ прочел данные (или через ДМА получил, не суть), проверил статус что "все хорошо" и говорит "а прочти ка любезный мне теперь сектор с номером прошлый+1". Пока ЦПУ с этими движняками возился начало этого сектора успевает проехать под головкой, движок то крутится а межсекторный промежуток со всякой служебной ботвой очень небольшой. И контроллеру приходится ждать целый оборот диска чтобы найти начало этого сектора, пока он до головки доедет. То есть в общем случае получается что за один оборот диска удается считать только один сектор, если читать их подряд и на диске они размещены подряд. Читая "с дырками не подряд" удается прочесть гораздо более одного сектора за оборот диска. В идеальном случае - половину секторов дорожки. Ощутите как говорится разницу. Ну либо "читать дорожку целиком от индекса до индекса" но это не всегда под задачу подходит и не всякий контроллер это умеет.
То есть если допустим на дорожке 16 секторов, то с чередованием ее прочесть всю можно за 2 оборота диска, а без чередования за 16. Разница по времени в 8 раз.
Поэтому сектора либо сразу при форматировании размещаются с чередованием, либо приходится городить вот такое вот извратное чтение с чередованием.





Ответить с цитированием