Rambler's Top100



3.1.3. Перекос головки

Многие пользователи плохо разбираются в чередовании секторов. Следующий вопрос — перекос головки — также довольно сложен, но понимание чередования секторов поможет разобраться и с ним. Напомним действия DOS при записи файла на диск Вначале DOS заполняет одну дорожку, а затем переходит к следующей головке в том же цилиндре, когда цилиндр заполнен, DOS переходит к следующей дорожке Каждый переход с одной дорожки на другую и с одного цилиндра на следующий занимает время, в течение которого диск неумолимо вращается С учетом этого обстоятельства нетрудно понять, что производительность диска снижается при считывании или записи файла, который пересекает границу дорожек или цилиндров. Идея перекоса головки достаточно проста Предположим, что вы только что закончили запись в последний сектор на одной дорожке. Полагая, что коэффициент чередования установлен оптимальным, теперь вы готовы записывать в первый сектор следующей дорожки Но вам придется подождать переключения головки и перемецения блока головок на следующую дорожку. Если эти операции занимают заметное Время, головка опоздает, несмотря на чередование Решение состоит в том, чтобы :двинуть номера всех секторов на новой дорожке на одну (или более) позиций ОТНОСИТЕЛЬНО их позиций на предыдущей дорожке.

Чтобы подробнее разобраться в происходящем, рассмотрим простой пример. Почти для каждой комбинации накопителя и контроллера, общая производительность шторой достаточно высока, чтобы оправдать введение перекоса, оптимальный коэффициент чередования составляет 11 Предположим, ради простоты, что при переходe с одной дорожки на другую оптимальная производительность достигается, если дрожка на следующей поверхности смещена относительно только что считанной на один сектор. Перемещение головок длится дольше, чем коммутация с одной головки нa другую. По-прежнему, ради простоты, предположим, что при переходе с одной дрожки на соседнюю достаточно смещения в три сектора. Рассмотренный пример показан на рис. 3 3 для двухдискового накопителя четыре головки) с коэффициентом чередования секторов 11 на одной поверхности, перекосом головок +1 и перекосом цилиндров +3 Отметим, что в накопителе есть всего два диска; дорожки снизу каждого диска показаны так, как будто вы смотрите сквозь диск Предположим теперь, что происходит запись (или считывание) файла в последовательно пронумерованные секторы и для файла требуется много дорожек.

На первой дорожке (головка 0, цилиндр 0 — это внешняя дорожка верхней поверхности верхнего диска) секторы пронумерованы последовательно с номера 1, начиная сразу после промежутка дорожки Следующая дорожка, которая записывается или считывается в той же позиции, находится на противоположной стороне верхнего диска — это дорожка 0 для головки 1 Отметим, что номера ее секторов начинаются с 17, а затем идут номера 1, 2, 3 и тд Такое смещение на один сектор при переходе с верхней стороны на нижнюю данного диска является примером перекоса головки +1

После записи всех секторов на дорожке с головкой 0, цилиндром 0 и всех секторов на следующей дорожке (головка 1, цилиндр 0) следующей должна записываться дорожка на верхней стороне нижнего диска (головка 2, цилиндр 0) Отметим, что на этой дорожке секторы нумеруются (после конца промежутка дорожки) как 16, 17, 1,2 и т.д. Эти номера секторов смещены относительно секторов предыдущей дорожки точно на один сектор — по-прежнему перекос головки равен +1

Такой порядок сохраняется до достижения последней дорожки в цилиндре 0 (головка 3) Последняя дорожка в цилиндре 0 начинается с номера сектора 15 Теперь блок головок должен перейти на цилиндр 1 и запись продолжается на верхнем диске с использованием головки 0 Чтобы отвести время на перемещение головок, внешняя дорожка нумеруется, начиная с сектора 12 Напомним, что последняя дорожка (головка 3, цилиндр 0) начиналась с номера сектора 15 Вычитание 3 для учета перекоса цилиндра дает 12 для начального номера сектора этой дорожки.

Некоторые высокопроизводительные контроллеры диска предоставляют пользователю возможность изменения перекоса головки, но большинство контроллеров этого допускает Пока вопрос о перекосе головки не привлекает достаточною внимания, но, без сомнения, при появлении более быстрых дисковых накопителей ему (в частности, контроллерам и программам, которые помогают установить перекос) будет уделяться большее внимание.



 


ГЛАВНАЯ

Copyright 2003 © FormatCenter
All Rights Reserved