| Both sides previous revisionPrevious revision | |
| hddxt [2026/03/16 08:10] – admin | hddxt [2026/03/16 08:20] (current) – admin |
|---|
| ===== Геометрия ===== | ===== Геометрия ===== |
| {{ ibm_hdd_1.jpg?nolink&200}} | {{ ibm_hdd_1.jpg?nolink&200}} |
| Как уже написано выше, диск MFM с физической точки зрения состоит из NNN дорожек (Cylinders) и YY головок (Heads) и "свободного" пространства на дорожке. Возникает два вопроса: | Как уже написано выше, диск MFM с физической точки зрения состоит из NNN дорожек (Cylinders) и YY головок (Heads) и "свободного" пространства на дорожке для размещения секторов (Sectors). Так определяется "геометрия" диска C/H/S (Cylinders/Heads/Sectors). Возникает два вопроса: |
| |
| * Каким образом дорожка форматируется на сектора ? | * Каким образом дорожка форматируется на сектора ? |
| * Как контроллер (и DOS) может узнать геометрию MFM диска C/H/S ? | * Как контроллер (и DOS) может узнать геометрию MFM диска C/H/S ? |
| |
| Давайте сначала ответим на второй вопрос. Краткий ответ такой: автоматически определить геометрию MFM диска - **невозможно**. Ни MFM диск ни контроллер не могут сообщить физические параметры диска. Процесс тут идет с другой стороны: именно **пользователь задает** параметры жесткого диска для контроллера. Для этого надо, например, найти производителя и марку жесткого диска. Во времена MFM ходили огромные списки из десятков и сотен моделей жестких дисков, содержащие C/H/S. Для машин IBM AT+ необходимо было найти в BIOS подходящий тип и прописать CMOS (позже появился User Type). Для XT контроллеров все было проще. Самый первый оригинальный Xebec 1210 поддерживал только Seagate ST-412: 306 дорожек и 4 головки. Поздние версии Xebec и WD1002 получили два джампера, которые позволяли выбрать 4 различных типа диска. Но на самом деле, с этих джамперов просто считывался индекс (номер) в таблице C/H/S внутри BIOS-а и при некотором знакомстве с организацией Optional ROM можно их найти и прописать туда любые параметры на любой из 4-х типов (да, нужно будет прошить УФПЗУ). | Давайте сначала ответим на второй вопрос. Краткий ответ такой: автоматически определить геометрию MFM диска - **невозможно**. Ни MFM диск ни контроллер не могут сообщить физические параметры диска. Процесс тут идет с другой стороны: именно **пользователь задает** параметры жесткого диска для контроллера. Для этого надо, например, найти производителя и марку жесткого диска. Во времена MFM ходили огромные списки из десятков и сотен моделей жестких дисков, содержащие C/H/S (разные "Hardware Bible"). Для машин IBM AT+ необходимо было найти в BIOS подходящий тип и прописать CMOS (позже появился User Type). Для XT контроллеров все было проще. Самый первый оригинальный Xebec 1210 поддерживал только Seagate ST-412: 306 дорожек и 4 головки. Поздние версии Xebec и WD1002 получили два джампера, которые позволяли выбрать 4 различных типа диска. Но на самом деле, с этих джамперов просто считывался индекс (номер) в таблице C/H/S внутри BIOS-а и при некотором знакомстве с организацией Optional ROM можно их найти и прописать туда любые параметры на любой из 4-х типов (да, нужно будет прошить УФПЗУ). |
| |
| Более того, если у нас есть например жесткой диск MFM в котором 820 дорожек и 8 головок, то можно задать контроллеру параметры 615/6 и все будет работать, не используя диск полностью. | Более того, если у нас есть например жесткой диск MFM в котором 820 дорожек и 8 головок, то можно задать контроллеру параметры 615/6 и все будет работать, не используя диск полностью. |