Размер шрифта
-
+

Восстановление данных на 100% - стр. 18

Она является наиболее старой, стандартной и универсальной. Ее называют геометрией жесткого диска.

Рис. 2.3. Цилиндры, головки и сектора


В начале использования жестких дисков их емкость ограничивалась десятками мегабайтов, поэтому речь шла действительно о настоящих физических дорожках (цилиндрах), головках и секторах. Со временем плотность записи на каждой пластине возросла во много раз, и контроллеры жестких дисков научилась пересчитывать эти параметры и представлять BIOS совершенно условную конфигурацию диска, где, например, головок в четыре раза больше, а цилиндров в четыре раза меньше, чем имеется в действительности. Произведение всех трех величин всегда остается таким, каким оно является в действительности. Причиной, которая заставила отойти от реальной, физической геометрии, стала сама история развития компьютерной техники. То производители винчестеров опережали в своих разработках создателей контроллеров IDE и BIOS материнских плат, то наоборот. Поиски совместимости и компромиссов привели к тому, что сегодня отображаемое число цилиндров, головок и секторов винчестера никак не соответствует настоящему устройству гермоблока. У современных дисков даже число секторов может быть переменной величиной. Дорожки, расположенные ближе к центру диска, разбиты на меньшее, а находящиеся на периферии – на большее количество секторов.

Адресация ECHS (Extended CHS), или Large, – дальнейшее развитие адресации CHS. Иначе ее называют «фиктивной адресацией» – число цилиндров, головок и секторов назначается изготовителем винчестера совершенно произвольно и записывается в CMOS контроллера.

Наряду с трехмерной адресацией CHS была придумана адресация логических блоков LBA – Logical Block Adress. С одной стороны, при этом типе адресации данные считываются логическими блоками, состоящими из нескольких секторов. Соответственно, число цилиндров делается меньше, а головок – больше, чем в действительности. С другой стороны, эта адресация линейная: каждому логическому блоку присваивается порядковый номер LBA. За нулевой принимается блок, который начинается с первого сектора нулевой головки нулевого цилиндра. Далее номера блоков определяются по формуле:

LBA = (CYL · HDS + HD) · SPT + SEC – 1,

где CYL, HD, SEC – номера цилиндра, головки и сектора в пространстве CHS; HDS – количество головок; SPT – количество секторов на дорожке.

Примечание

Блоки, цилиндры и дорожки нумеруются, начиная с нуля, а сектора – с первого номера. Такая нумерация сложилась исторически.

Современные винчестеры, как правило, поддерживают все три типа адресации, а выбор используемого типа остается за BIOS материнской платы. Если в настройках BIOS выбран один из типов адресации, то винчестер за счет внутренней обработки и преобразования данных представляется контроллеру именно таким образом. Если взять три возможные конфигурации одного и того же диска, можно убедиться, что произведение CxHxS остается во всех трех случаях практически неизменным, а умноженное на размер сектора (512 байтов), оно составляет как раз емкость винчестера.

Нужно помнить, что ни число головок, ни количество физических секторов на «блинах» внутри гермоблока от выбора той или иной адресации не меняется. Электроника винчестера (его микропрограмма) «создает» несуществующие головки и соответствующим образом «подставляет» под них сектора и цилиндры. Этот процесс называют

Страница 18