Введение

Исторический метод адресации физических блоков данных на жестких дисках

Сектор головки цилиндра (CHS) — это ранний метод присвоения адресов каждому физическому блоку данных на жестком диске. Это трехмерная система координат, состоящая из вертикальной координаты головки, горизонтальной (или радиальной) координаты цилиндра и угловой координаты сектора. Головка выбирает круглую поверхность — пластину в диске (и одну из ее двух сторон). Цилиндр — это цилиндрическое пересечение через стопку пластин в диске, центрированное вокруг шпинделя диска. Объединенные цилиндр и головка пересекаются в круговую линию, или, точнее, в круговую полосу физических блоков данных, называемую дорожкой. Сектор, наконец, выбирает блок данных в этой дорожке, который должен быть адресован, поскольку дорожка разделена на несколько одинаковых частей, каждая из которых представляет собой дугу в (360/n) градусов, где n — количество секторов в дорожке. Адреса CHS использовались вместо простых линейных адресов (от 0 до общего количества блоков на диске), поскольку ранние жесткие диски не поставлялись со встроенным дисковым контроллером, который скрывал бы физическую структуру. Для правильного обращения к блокам данных использовалась отдельная универсальная карта контроллера, поэтому операционная система должна была знать точную физическую «геометрию» конкретного диска, подключенного к контроллеру. Традиционные ограничения составляли 512 байт/сектор × 63 сектора/дорожку × 255 головок (дорожек/цилиндр) × 1024 цилиндров, что давало ограничение в 8032,5 МБ для общей емкости диска. По мере того как геометрия становилась более сложной (например, с введением зонной записи) и размеры дисков росли, метод адресации CHS становился ограничивающим. С конца 1980-х годов жесткие диски начали поставляться со встроенным дисковым контроллером, который хорошо знал физическую геометрию; однако они сообщали компьютеру ложную геометрию, например, большее количество головок, чем фактически присутствовало, чтобы получить больше адресуемого пространства. Эти логические значения CHS переводились контроллером, таким образом, адресация CHS больше не соответствовала каким-либо физическим характеристикам диска. К середине 1990-х годов интерфейсы жестких дисков заменили схему CHS логическим адресованием блоков (LBA), но многие инструменты для работы с таблицей разделов MBR по-прежнему выравнивали разделы по границам цилиндров; таким образом, артефакты адресации CHS все еще встречались в программном обеспечении для разбиения диска на разделы до конца 2000-х годов. Наиболее распространенный размер физического сектора для жестких дисков сегодня составляет 512 байт, но существовали жесткие диски с 520 байтами на сектор для машин, несовместимых с IBM. В 2005 году некоторые специализированные жесткие диски Seagate использовали размеры секторов 1024 байта на сектор. Жесткие диски Advanced Format используют 4096 байт на физический сектор (4Kn) с 2010 года, но также могут эмулировать 512-байтовые сектора (512e) в течение переходного периода. Магнитооптические диски используют размеры секторов 512 и 1024 байта на 5,25-дюймовых дисках и 512 и 2048 байта на 3,5-дюймовых дисках. В адресации CHS номера секторов всегда начинаются с 1, сектора 0 нет, что может привести к путанице, поскольку схемы адресации логических секторов обычно начинают отсчет с 0, например, логическое блочное адресование (LBA) или «относительное адресование секторов», используемое в DOS. Для физической геометрии диска максимальное число секторов определяется низкоуровневым форматированием диска. Однако для доступа к диску с BIOS совместимых машин IBM PC номер сектора кодировался шестью битами, что давало максимальное количество 63 сектора на дорожку (111111). Этот максимум все еще используется для виртуальных геометрий CHS.

Следы

Следы — это тонкие концентрические круговые полосы, состоящие из секторов. Для чтения одной дорожки требуется как минимум одна головка. В отношении геометрии дисков термины "дорожка" и "цилиндр" тесно связаны. Для односторонних или двусторонних дискет обычно используется термин "дорожка", а для дисков с более чем двумя головками — термин "цилиндр". Строго говоря, дорожка представляет собой конкретную комбинацию CH, состоящую из SPT секторов, в то время как цилиндр состоит из SPT × H секторов.

Цилиндры

Цилиндр — это логическое разделение данных на дисковом накопителе, используемое в режиме адресации CHS диска с фиксированной блочной архитектурой или в режиме адресации цилиндр-головка-сектор (CCHHR) диска CKD. Эта концепция представляет собой набор концентрических, полых цилиндрических сечений, проходящих через физические диски (пластины), объединяющих соответствующие круговые дорожки, выровненные по всей стопке пластин. Количество цилиндров дискового накопителя точно соответствует количеству дорожек на одной поверхности накопителя. Цилиндр включает в себя дорожки с одинаковым номером на всех пластинах, охватывая все такие дорожки на каждой поверхности пластины, способной хранить данные (независимо от того, является ли дорожка неисправной). Цилиндры формируются вертикально дорожками. Иными словами, дорожка 12 на пластине 0, дорожка 12 на пластине 1 и так далее составляют цилиндр 12. Другие типы устройств хранения с прямым доступом (DASD), такие как устройства барабанной памяти или ячейка данных IBM 2321, могут использовать адреса блоков, включающие адрес цилиндра, хотя этот адрес цилиндра не соответствует геометрическому цилиндрическому сечению устройства.