В целом, вы довольно неаккуратны с терминологией, так что это источник дальнейшей путаницы.
1024-битное адресуемое число (1024 = 2 ^ 10)
IBM PC/XT использовал дисковый контроллер Western Digital WD1010, который использовал (в аппаратных регистрах) 10-битный номер цилиндра.
Первый цилиндр имеет адрес 0, поэтому есть 1024 адреса цилиндров.
« Адресуемый номер » не имеет смысла.
-1 для "загрузочного сектора" (c-0, h-0, s-0)
63-битное адресуемое число (63 = 2 ^ 6 - 1)
Первый сектор (каждой дорожки) - это адрес 1, поэтому 6-битный номер сектора может адресовать до 63 секторов (номера секторов от 1 до 63) на каждой дорожке.
Нет адреса сектора ноль. Это не зарезервировано. Не существует
Вычитание этого смещения является арифметической необходимостью и никак не связано с загрузочным сектором.
Использование первого сектора (или любого сектора) дисковода для загрузки (или любой другой функции) не имеет отношения к необходимости вычитать начальное смещение.
Таким образом, вы можете получить теоретический максимальный адрес следующего:
512(байты) × 63(сектора) x 256(головки) × 1024(цилиндры) = 8064 МиБ
Нет, это максимальная вместимость.
Дисковые адреса для секторов, а не байтов.
Я понимаю, что номер главы является 246-битным адресуемым номером ...
Да ??? "Адресуемый номер" ???
Одним из параметров привода является количество головок (в цилиндре).
Одно из чисел в адресе CHS является номером головы.
246 бит ???
Что меня смущает, так это то, что на самом деле означает голова, когда ее называют heads-per-track
.
Heads-per-track
- это то, что вы придумали, поскольку для типичного жесткого диска, используемого в ПК, такого параметра нет (т. Е. Это число всегда будет равно единице).
Конкретный трек будет прочитан и записан только одним конкретным носителем R/W.
Там одна головка R/W на поверхность. (Вы вряд ли будете использовать двухпортовый накопитель.)
Головка R/W установлена на конце рычага.
Все головки и рычаги R/W содержат узел, который перемещается / вращается приводом.
(Но были также дисководы с фиксированной головкой, например, одна головка на дорожку, которые имеют нулевое время поиска.)
Эти термины не имеют никакого смысла для меня, потому что из того, что я знаю, есть голова (фактическая рука, которая делает чтение / запись), и если только на сменном носителе нет каждого диска, есть два из них (вверху, внизу), так что это действительно делает больше с тех пор, как их называют головками на диске или головками на диске ... и на самом деле это должны быть секторы на дорожку, верно?
Тогда, видимо, вы не понимаете, что такое голова.
Вы также путаете "блюдо" с "поверхностью".
Не требуется использовать обе стороны диска, поэтому каждая поверхность рассматривается как единое целое, а не как единое целое.
Существует параметр привода, называемый sectors per track
.
Теперь этот термин heads-per-track
появляется, когда вы смотрите на преобразование из CHS в LBA.
Опять же, что-то, что вы, казалось, сделали. Голов за трек - это единство.
но как геометрия 1020,16,63 переводится в CHS 3,2,1, может кто-нибудь объяснить это мне?
LBA - это адрес сектора.
CHS также адрес сектора.
Чтобы преобразовать один стиль адреса в другой, вам нужно указать геометрию диска:
. number of cylinders
. number of heads (per cylinder)
. number of sectors per track
Вы не можете * перевести * геометрию в адрес; Вы используете геометрию для преобразования адреса.
Адрес CHS 3,2,1
эквивалентен адресу LBA 3150
если геометрия привода равна 1020,16,63
.
ADDENDUM для пересмотренного Вопроса
На мой взгляд, было бы лучше упомянуть их как головки на диск или головки на поверхность, поскольку цилиндр проходит через весь диск (несколько пластин).
Из многочисленных технических документов (от производителей дисководов), которые я прочитал, в таблице спецификаций для (однопортового) накопителя будет указано количество головок R/W и количество пластин. Никогда не было соотношения heads per disk
, heads per surface
или heads per platter
.
Работая инженером по программному обеспечению и микропрограммному обеспечению, разрабатывая микропрограммное обеспечение контроллеров, драйверы устройств для дисков и обработчики файловых систем, я никогда не интересовался и не должен был использовать количество пластин. Количество пластин или наличие двух возможных поверхностей для пластины - это механические свойства , которые совершенно не зависят от геометрии привода для адресации CHS.
C в CHS относится к адресу цилиндра. Дисковод должен (электромеханически) искать требуемый адрес / местоположение цилиндра, чтобы сборка головки R / W была правильно установлена.
H в CHS относится к главному адресу R/W. Контроллер диска (электрически) выбирает запрошенную головку R/W (после завершения поиска) по ее адресу для доступа к правильной дорожке. Все остальные головки R/W отключены (электрически).
S в CHS относится к адресу сектора. Контроллер диска (программно) сканирует каждый сектор (после поиска и выбора головки), когда он вращается под (выбранной) головкой R/W, пока не будет найден запрошенный сектор (например, считывает запись идентификатора сектора и выполняет адрес сравнение).
Также
Если вы знакомы с анализом размеров, указание числа головок дисковода в виде heads per cylinder
имеет больше смысла, чем heads per drive
.
Я понимаю геометрические числа CHS, но откуда берутся (3,2,1) числа кортежей CHS?
Это просто произвольный адрес CHS, выбранный для использования в примерах преобразования в адреса LBA.
КСТАТИ
В жаргоне конечного пользователя "диск" == диск.
В профессиональном жаргоне HDD, "диск" == диск диск.