README_GRUB4DOS / README_GRUB4DOS: README_GRUB4DOS
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Если программа форматирования не знает, поддерживает ли BIOS LBA, она может действовать следующим образом: PhD 05.11.11 в 08:28 |
|
|
Если (начало_раздела + количество_секторов_на_разделе) превышает возможности адресации CHS (особенно когда больше 1024*256*63), вызывающий должен установить значение этого байта в 0x42; если нет, то в 0x02. PhD 05.11.11 в 08:32 |
||
|
Заметьте, Windows98 использует в качестве индикатора LBA значение 0x0e. PhD 05.11.11 в 08:33 |
||
|
Обновление: этот байт индикатора LBA игнорируется. Загрузочная запись может получить поддержку LBA в BIOS. PhD 05.11.11 в 08:35 |
||
|
03h 10 Строка имени OEM (от ОС, которая форматировала диск). PhD 05.11.11 в 08:37 |
||
|
0Dh 1 Секторов на блок. Возможные значения 2, 4, 8, 16 и 32. PhD 05.11.11 в 08:38 |
||
|
0Eh 2 Байт на блок. Возможные значения 0x400, 0x800, 0x1000, 0x2000 и 0x4000. PhD 05.11.11 в 08:38 |
||
|
10h 4 Указатели в блоке указателей-на-блок, это количество блоков, закрытых двойным косвенным блоком. PhD 05.11.11 в 08:40 |
||
|
Возможные значения - 0x10000, 0x40000, 0x100000, 0x400000 и 0x1000000. PhD 05.11.11 в 08:41 |
||
|
14h 4 Указателей на блок, количество блоков, закрытых косвенным блоком. PhD 05.11.11 в 08:42 |
||
|
Возможные значения - 0x100, 0x200, 0x400, 0x800, 0x1000. PhD 05.11.11 в 08:42 |
||
|
18h 2 Секторов на дорожку. PhD 05.11.11 в 08:42 |
||
|
1Ah 2 Количество головок/сторон. PhD 05.11.11 в 08:42 |
||
|
1Ch 4 Количество скрытых секторов (предшествующих загрузочному сектору). PhD 05.11.11 в 23:42 |
||
|
Также ссылается на начальный сектор раздела. PhD 05.11.11 в 23:43 |
||
|
Для дискет он должен быть равен 0. PhD 05.11.11 в 23:43 |
||
|
20h 4 Общее количество секторов в файловой системе (или в разделе). PhD 05.11.11 в 23:44 |
||
|
24h 1 Номер диска загрузочного устройства в BIOS. PhD 05.11.11 в 23:44 |
||
|
На самом деле этот байт игнорируется. Загрузочный код запишет DL в этот байт. BIOS или вызывающая программа должны задать номер диска в DL. PhD 05.11.11 в 23:47 |
||
|
Мы предполагаем, что все BIOS передают правильный новер в DL. BIOS с ошибками не поддерживаются! PhD 05.11.11 в 23:49 |
||
|
25h 1 Номер раздела на загрузочном устройстве. PhD 05.11.11 в 23:50 |
||
|
0, 1, 2, 3 - первичные разделы. PhD 05.11.11 в 23:51 |
||
|
0xff - весь диск. Так что для дискет он должен быть также 0xff. PhD 05.11.11 в 23:53 |
||
|
26h 2 - размер inode в байтах. (Внимание! Мы использовали для указания размера inode зарезервированное слово!) PhD 05.11.11 в 23:57 |
||
|
28h 4 Количество inode в группе. PhD 05.11.11 в 23:57 |
||
|
Обычно у дискет 1.44 только одна группа, и общее количество inode равняется 184. Так что значение должно быть больше или равно 184. PhD 05.11.11 в 23:58 |
||
|
2Ch 4 Количество блоков для дескрипторов группы. PhD 06.11.11 в 00:01 |
||
|
Возможные значения - 2 для 1024-байтовых блоков и 1 для всех остальных. PhD 06.11.11 в 00:01 |
||
|
Здесь значение равно (s_first_data_block + 1). PhD 06.11.11 в 00:02 |
||
|
30h 1 - код для "cld"(0xFC). PhD 06.11.11 в 00:03 |
||
|
31h 2 - код для "xor ax,ax"(0x31, 0xC0). PhD 06.11.11 в 00:03 |
||
|
33h 1 - код для "nop"(0x90) or "cwd"(0x99) PhD 06.11.11 в 00:03 |
||
|
34h 458 Оставшийся машинный код. PhD 06.11.11 в 00:03 |
||
|
1FEh 2 Загрузочная подпись AA55h. PhD 06.11.11 в 00:04 |
||
|
2. Загрузочный сектор/Схема загрузочной записи (для загрузки grldr) PhD 06.11.11 в 00:05 |
||
|
Обновление: bootlace.com - это утилита DOS/Linux, предназначенная для установки загрузочной записи GRLDR в загрузочный сектор раздела FAT12/16. PhD 06.11.11 в 00:13 |
||
|
Описание смещения PhD 05.11.11 в 08:29 |
||
|
02h 1 Индикатор LBA. Возможные значения - 0x90 для режима CHS или 0x0e для режима LBA. PhD 06.11.11 в 00:15 |
||
|
Если BIOS int13 имеет поддержку LBA, этому байту может быть безопасно задано значение 0x0e. PhD 06.11.11 в 00:15 |
||
|
Некоторые USB BIOS могут выдавать ошибки при работе в режиме CHS, так что программа форматирования должна задать этому байту значение 0x0e. Это при том, что (в основном) все USB BIOS поддерживают LBA. PhD 06.11.11 в 00:16 |
||
|
Если программа форматирования не знает, поддерживает ли BIOS LBA, она может действовать следующим образом: PhD 06.11.11 в 00:16 |
||
|
Если (начало_раздела + количество_секторов_на_разделе) превышает возможности адресации CHS (особенно когда больше 1024*256*63), вызывающий должен установить значение этого байта в 0x0e; если нет, то в 0x90. PhD 06.11.11 в 00:18 |
||
|
Обновление: этот байт-индикатор LBA игнорируется. Загрузочная запись сканирует BIOS на наличие поддержки LBA. PhD 15.11.11 в 04:41 |
||
