Блок параметров BIOS (англ. BIOS parameter block, часто сокращается до ВРВ) — структура данных, используемая в основном в вычислительной технике на базе процессоров с архитектурой x86 или x86-64, располагающаяся в загрузочном секторе раздела и описывающая логическую структуру хранилища данных. На устройствах, поддерживающих разделы, таких как жесткие диски, в ВРВ описывается объём раздела, в то время как на неделимых разделами устройствах, таких как дискеты, оно описывает весь носитель. Основу ВРВ можно использовать в любом разделе, в том числе на гибких дисках, где его присутствие часто необходимо, однако, некоторые файловые системы могут использовать его и для описания основных файловых структур.
Файловые системы, использующие блок параметров BIOS включают: FAT12 (кроме DOS 1.x версий), FAT16, FAT32, HPFS и NTFS. Из-за различных типов полей, объёма данных, которые они содержат, длина ВРВ отличается для загрузочных секторов FAT16, FAT32, и NTFS.[1] (Подробное описание различных вариантов FAT ВРВ и её элементов может быть найдено в соответствующих статьях). ECMA-107 или ISO/IEC 9293 (который описывает, FAT для дискет и оптических дисков) также называет это как дескриптор FDC или расширенный дескриптор FDC.
FAT12 / FAT16
DOS 2.0 BPB
Основная статья: DOS
Формат стандартной DOS 2.0 ВРВ для FAT12 (13 байта):
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
2 байта — слово (word) x86
|
Байт на логическом секторе
|
0x00D
|
0x02
|
1 байт
|
Логических секторов в кластере
|
0x00E
|
0x03
|
2 байта (word)
|
Зарезервированых секторов
|
0x010
|
0x05
|
1 байт
|
Количество таблиц FAT
|
0x011
|
0x06
|
2 байта (word)
|
Количество элементов корневого каталога
|
0x013
|
0x08
|
2 байта (word)
|
Всего логических секторов на диске
|
0x015
|
0x0A
|
1 байт
|
Тип носителя
|
0x016
|
0x0B
|
2 байта (word)
|
Логических секторов в FAT
|
DOS 3.0 BPB
Формат стандартного DOS 3.0 ВРВ для FAT12 и FAT16 (19 байт), так же поддерживается некоторыми версиями MS-DOS 2.11: [2]
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
13 байт
|
DOS 2.0 BPB
|
0x018
|
0x0D
|
2 байта (word)
|
Физических секторов на дорожке
|
0x01A
|
0x0F
|
2 байта (word)
|
Количество головок
|
0x01C
|
0x11
|
2 байта (word)
|
Всего скрытых секторов (совместимо с DOS 3.31 BPB)
|
DOS 3.2 BPB
Формат стандартного DOS 3.2 ВРВ для FAT12 и FAT16 (21 байт):
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
19 байт
|
DOS 3.0 BPB
|
0x01E
|
0x13
|
2 байта (word)
|
Всего секторов (несовместимо с DOS 3.31 BPB)
|
DOS 3.31 ВРВ
Формат стандартного DOS 3.31 ВРВ для FAT12, FAT16 и FAT16B (25 байт):
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
13 байт
|
DOS 2.0 BPB
|
0x018
|
0x0D
|
2 байта (word)
|
Физические секторов на дорожке (идентичный DOS 3.0 BPB)
|
0x01A
|
0x0F
|
2 байта (word)
|
Количество головок (идентично DOS 3.0 BPB)
|
0x01C
|
0x11
|
4 байта (dword)
|
Скрытых секторов (совместимо с DOS 3.0 BPB)
|
0x020
|
0x15
|
4 байта (dword)
|
Всего логических секторов (размер переменной увеличен, поддерживает количество до
4 294 967 296)
|
DOS 3.4 EBPB
Основная статья: DOS 3.4 EBPB
Формат PC DOS 3.4 и OS / 2 1,0-1,1 Extended BPB для FAT12, FAT16 и FAT16B (32 байта):
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
25 байт
|
DOS 3.31 ВРВ
|
0x024
|
0x19
|
1 байт
|
Номер физического диска
|
0x025
|
0x1A
|
1 байт
|
Флаги
|
0x026
|
0x1B
|
1 байт
|
Расширенная загрузочная запись
|
0x027
|
0x1C
|
4 байта (dword)
|
Серийный номер тома (создаётся при форматировании из даты и времени, зашифрованных простым алгоритмом операционной системы)
|
FAT12 / FAT16 / HPFS
DOS 4.0 EBPB
Формат DOS 4.0 и OS/2 1.2 Extended (расширенный англ.) BPB для FAT12, FAT16, HPFS и FAT16B (51 байта):
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
25 байт
|
DOS 3.31 ВРВ
|
0x024
|
0x19
|
1 байт
|
Номер физического диска (идентичен DOS 3.4 EBPB)
|
0x025
|
0x1A
|
1 байт
|
Флаги (идентичные DOS 3.4 EBPB)
|
0x026
|
0x1B
|
1 байт
|
Расширенная загрузочная запись (по аналогии с DOS 3.4 EBPB и NTFS EBPB)
|
0x027
|
0x1C
|
4 байта (dword)
|
Серийный номер тома (создаётся при форматировании из даты и времени, зашифрованных простым алгоритмом операционной системы)
|
0x02B
|
0x20
|
11 байт
|
Метка тома
|
0x036
|
0x2B
|
8 байт
|
Тип файловой системы
|
FAT32
DOS 7.1 EBPB
Формат короткого DOS 7.1 «Расширенного блока параметров BIOS» (60 байт) в файловой системе FAT32:
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
25 байт
|
DOS 3.31 ВРВ
|
0x024
|
0x19
|
4 байта (dword)
|
Размер FAT в логических секторах
|
0x028
|
0x1D
|
2 байта (word)
|
Двойное поле флагов (два одинаковых байтовых поля)
|
0x02A
|
0x1F
|
2 байта (word)
|
Версия
|
0x02C
|
0x21
|
4 байта (dword)
|
Корневой каталог в кластерах
|
0x030
|
0x25
|
2 байта (word)
|
Расположение FSI-структуры (дополнительный блок информации о файловой системе)
|
0x032
|
0x27
|
2 байта (word)
|
Расположение резервных секторов
|
0x034
|
0x29
|
12 байт
|
Зарезервировано (имя файла загрузки)
|
0x040
|
0x35
|
1 байт
|
Номер физического диска
|
0x041
|
0x36
|
1 байт
|
Флаги
|
0x042
|
0x37
|
1 байт
|
Расширенная загрузочная запись
|
0x043
|
0x38
|
4 байта (dword)
|
Серийный номер тома
|
Формат полного DOS 7.1 «Расширенного блока параметров BIOS» (79 байт) в файловой системе FAT32:
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
25 байт
|
DOS 3.31 ВРВ
|
0x024
|
0x19
|
4 байта (dword)
|
Размер FAT в логических секторах
|
0x028
|
0x1D
|
2 байта (word)
|
Двойное поле флагов (два одинаковых байтовых поля)
|
0x02A
|
0x1F
|
2 байта (word)
|
Версия
|
0x02C
|
0x21
|
4 байта (dword)
|
Корневой каталог в кластерах
|
0x030
|
0x25
|
2 байта (word)
|
Расположение FSI-структуры (дополнительный блок информации о файловой системе)
|
0x032
|
0x27
|
2 байта (word)
|
Расположение резервных секторов
|
0x034
|
0x29
|
12 байт
|
Зарезервировано (имя файла загрузки)
|
0x040
|
0x35
|
1 байт
|
Номер физического диска
|
0x041
|
0x36
|
1 байт
|
Флаги
|
0x042
|
0x37
|
1 байт
|
Расширенная загрузочная запись
|
0x043
|
0x38
|
4 байта (dword)
|
Серийный номер тома
|
0x047
|
0x3C
|
11 байт
|
Метка тома
|
0x052
|
0x47
|
8 байт
|
Тип файловой системы
|
NTFS
Формат Расширенная ВРВ для NTFS (73 байта):
Смещение в секторе
|
Смещение в ВРВ
|
Длина
|
Описание
|
0x00B
|
0x00
|
25 байт
|
DOS 3.31 ВРВ
|
0x024
|
0x19
|
1 байт
|
Номер физического диска
|
0x025
|
0x1A
|
1 байт
|
Флаги (идентичные DOS 3.4 EBPB)
|
0x026
|
0x1B
|
1 байт
|
Расширенная загрузочная запись (по аналогии с DOS 3.4 EBPB и NTFS EBPB)
|
0x027
|
0x1C
|
1 байт
|
Зарезервировано
|
0x028
|
0x1D
|
8 байт (qword)
|
Секторов в томе
|
0x030
|
0x25
|
8 байт (qword)
|
Первый кластер MFT
|
0x038
|
0x2D
|
8 байт (qword)
|
Первый кластер MFT (копия предыдущего поля)
|
0x040
|
0x35
|
4 байта (dword)
|
Размер записи MFT
|
0x044
|
0x39
|
4 байта (dword)
|
Размер индексного блока
|
0x048
|
0x3D
|
8 байт (qword)
|
Серийный номер тома
|
0x050
|
0x45
|
4 байта (dword)
|
Контрольная сумма
|
См. также
Список литературы
- ↑ Microsoft. Microsoft Windows 2000 Server Operations Guide. Microsoft Press