Блок параметров BIOS
В вычислительной технике , блок параметров BIOS часто сокращаемый до BPB , представляет собой структуру данных в загрузочной записи тома (VBR), описывающую физическую структуру хранения данных тома . На разделенных устройствах, таких как жесткие диски , BPB описывает раздел тома, тогда как на неразмеченных устройствах, таких как дискеты , он описывает весь носитель. Базовый BPB может появиться и использоваться в любом разделе, включая дискеты, где его присутствие часто необходимо; однако некоторые файловые системы также используют его для описания основных структур файловых систем. Файловые системы, использующие блок параметров BIOS, включают FAT12 (кроме DOS 1.x), FAT16 , FAT32 , HPFS и NTFS . Из-за разных типов полей и объема содержащихся в них данных длина BPB различна для загрузочных секторов FAT16, FAT32 и NTFS. [1] (Подробное обсуждение различных версий FAT BPB и их записей можно найти в статье FAT .) В сочетании с 11-байтовой структурой данных в самом начале загрузочных записей тома, непосредственно предшествующих BPB или EBPB, это также называется FDC. дескриптор или расширенный дескриптор FDC в ECMA-107 или ISO/IEC 9293 (который описывает FAT как для гибких/дискетных картриджей и картриджей для оптических дисков).
ФАТ12/ФАТ16
[ редактировать ]ДОС 2.0 БПБ
[ редактировать ]Формат стандартного DOS 2.0 BPB для FAT12 (13 байт):
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | СЛОВО | Байтов на логический сектор |
0x00D | 0x02 | БАЙТ | Логические сектора на кластер |
0x00E | 0x03 | СЛОВО | Зарезервированные логические сектора |
0x010 | 0x05 | БАЙТ | Количество FAT |
0x011 | 0x06 | СЛОВО | Записи корневого каталога |
0x013 | 0x08 | СЛОВО | Всего логических секторов |
0x015 | 0x0A | БАЙТ | Медиа-дескриптор |
0x016 | 0x0B | СЛОВО | Логические сектора на FAT |
ДОС 3.0 БПБ
[ редактировать ]Формат стандартного BPB DOS 3.0 для FAT12 и FAT16 (19 байт), уже поддерживаемый некоторыми версиями MS-DOS 2.11: [2]
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | 13 БАЙТОВ | ДОС 2.0 БПБ |
0x018 | 0x0D | СЛОВО | Физические сектора на дорожку |
0x01A | 0x0F | СЛОВО | Количество головок |
0x01C | 0x11 | СЛОВО | Скрытые сектора (несовместимы с DOS 3.31 BPB ) |
ДОС 3.2 БПБ
[ редактировать ]Формат стандартного BPB DOS 3.2 для FAT12 и FAT16 (21 байт):
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | 19 БАЙТОВ | ДОС 3.0 БПБ |
0x01E | 0x13 | СЛОВО | Всего секторов (несовместимо с DOS 3.31 BPB ) |
ДОС 3.31 БПБ
[ редактировать ]Формат стандартного BPB DOS 3.31 для FAT12 , FAT16 и FAT16B (25 байт):
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | 13 БАЙТОВ | ДОС 2.0 БПБ |
0x018 | 0x0D | СЛОВО | Физические сектора на дорожку (идентично DOS 3.0 BPB ) |
0x01A | 0x0F | СЛОВО | Количество головок (идентично DOS 3.0 BPB) |
0x01C | 0x11 | ДВОРД | Скрытые сектора (несовместимы с DOS 3.0 BPB) |
0x020 | 0x15 | ДВОРД | Большие общие логические сектора |
ДОС 3.4 ЕБПБ
[ редактировать ]Формат PC DOS 3.4 и OS/2 1.0-1.1 Расширенный BPB для FAT12 , FAT16 и FAT16B (32 байта):
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | 25 БАЙТ | ДОС 3.31 БПБ |
0x024 | 0x19 | БАЙТ | Номер физического диска |
0x025 | 0x1A | БАЙТ | Флаги и т. д. |
0x026 | 0x1B | БАЙТ | Расширенная загрузочная подпись ( 0x28 он же «4.0») (аналогично DOS 4.0 EBPB и NTFS EBPB ) |
0x027 | 0x1C | ДВОРД | Серийный номер тома |
FAT12 / FAT16 / HPFS
[ редактировать ]ДОС 4.0 ЕБПБ
[ редактировать ]Формат DOS 4.0 и OS/2 1.2 Расширенный BPB для FAT12 , FAT16 , FAT16B и HPFS (51 байт):
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | 25 БАЙТ | ДОС 3.31 БПБ |
0x024 | 0x19 | БАЙТ | Номер физического диска (идентично DOS 3.4 EBPB ) |
0x025 | 0x1A | БАЙТ | Флаги и т. д. (идентичны DOS 3.4 EBPB) |
0x026 | 0x1B | БАЙТ | Расширенная загрузочная подпись ( 0x29 он же «4.1») (аналогично DOS 3.4 EBPB и NTFS EBPB ) |
0x027 | 0x1C | ДВОРД | Серийный номер тома (идентичен DOS 3.4 EBPB) |
0x02B | 0x20 | 11 БАЙТ | Метка тома |
0x036 | 0x2B | 8 БАЙТОВ | Тип файловой системы |
FAT32
[ редактировать ]ДОС 7.1 ЕБПБ
[ редактировать ]Формат короткого блока расширенных параметров BIOS DOS 7.1 (60 байт) для FAT32 :
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | 25 БАЙТ | ДОС 3.31 БПБ |
0x024 | 0x19 | ДВОРД | Логические сектора на FAT |
0x028 | 0x1D | СЛОВО | Зеркальное отображение флагов и т. д. |
0x02A | 0x1F | СЛОВО | Версия |
0x02C | 0x21 | ДВОРД | Кластер корневого каталога |
0x030 | 0x25 | СЛОВО | Расположение информационного сектора ФС |
0x032 | 0x27 | СЛОВО | Расположение резервных секторов |
0x034 | 0x29 | 12 БАЙТОВ | Зарезервировано (имя загрузочного файла) |
0x040 | 0x35 | БАЙТ | Номер физического диска |
0x041 | 0x36 | БАЙТ | Флаги и т. д. |
0x042 | 0x37 | БАЙТ | Расширенная загрузочная подпись ( 0x28 ) |
0x043 | 0x38 | ДВОРД | Серийный номер тома |
Формат полного расширенного блока параметров BIOS DOS 7.1 (79 байт) для FAT32 :
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | 25 БАЙТ | ДОС 3.31 БПБ |
0x024 | 0x19 | ДВОРД | Логические сектора на FAT |
0x028 | 0x1D | СЛОВО | Зеркальное отображение флагов и т. д. |
0x02A | 0x1F | СЛОВО | Версия |
0x02C | 0x21 | ДВОРД | Кластер корневого каталога |
0x030 | 0x25 | СЛОВО | Расположение информационного сектора ФС |
0x032 | 0x27 | СЛОВО | Расположение резервных секторов |
0x034 | 0x29 | 12 БАЙТОВ | Зарезервировано (имя загрузочного файла) |
0x040 | 0x35 | БАЙТ | Номер физического диска |
0x041 | 0x36 | БАЙТ | Флаги и т. д. |
0x042 | 0x37 | БАЙТ | Расширенная загрузочная подпись ( 0x29 ) |
0x043 | 0x38 | ДВОРД | Серийный номер тома |
0x047 | 0x3C | 11 БАЙТ | Метка тома |
0x052 | 0x47 | 8 БАЙТОВ | Тип файловой системы |
NTFS
[ редактировать ]Формат расширенного BPB для NTFS (73 байта):
Смещение сектора | Смещение BPB | Длина поля | Описание |
---|---|---|---|
0x00B | 0x00 | 25 БАЙТ | ДОС 3.31 БПБ |
0x024 | 0x19 | БАЙТ | Номер физического диска (идентично DOS 3.4 EBPB ) |
0x025 | 0x1A | БАЙТ | Флаги и т. д. (идентичны DOS 3.4 EBPB) |
0x026 | 0x1B | БАЙТ | Расширенная загрузочная подпись ( 0x80 он же «8.0») (аналогично DOS 3.4 EBPB и DOS 4.0 EBPB ) |
0x027 | 0x1C | БАЙТ | Сдержанный |
0x028 | 0x1D | QWORD | Секторы по объему |
0x030 | 0x25 | QWORD | Номер первого кластера MFT |
0x038 | 0x2D | QWORD | MFT зеркально отражает первый номер кластера |
0x040 | 0x35 | ДВОРД | Размер записи MFT |
0x044 | 0x39 | ДВОРД | Размер индексного блока |
0x048 | 0x3D | QWORD | Серийный номер тома |
0x050 | 0x45 | ДВОРД | Контрольная сумма |
exFAT БПБ
[ редактировать ]exFAT не использует BPB в классическом понимании. Тем не менее, загрузочная запись тома в секторе 0 организована аналогично BPB. [3]
Смещение сектора | Длина поля (байты) | Описание |
---|---|---|
0x000 | 3 | JumpBoot. Должно быть 0xEB, 0x76, 0x90. |
0x003 | 8 | Имя файловой системы. Должно быть «ЭКСФАТ» . |
0x00B | 53 | Бланк (традиционная зона BPB). Должно быть все равно нулю. |
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Майкрософт . Руководство по эксплуатации Microsoft Windows 2000 Server . Майкрософт Пресс .
- ^ Патерсон, Тим ; Microsoft (19 декабря 2013 г.) [17 мая 1983 г.]. «Microsoft DOS V1.1 и V2.0: /msdos/v20source/SKELIO.TXT, /msdos/v20source/HRDDRV.ASM» . Музей истории компьютеров , Microsoft . Архивировано из оригинала 9 сентября 2017 г. Проверено 25 марта 2014 г. (Примечание: хотя издатели утверждают, что это будут MS-DOS 1.1 и 2.0, на самом деле это SCP MS-DOS 1.25 и смесь Altos MS-DOS 2.11 и TeleVideo PC DOS 2.11 .)
- ^ «Файловая система exFAT» . elm-chan.org .
Дальнейшее чтение
[ редактировать ]- де Бойн Поллард, Джонатан. «Все о блоках параметров BIOS» . Часто встречающиеся ответы . Архивировано из оригинала 9 сентября 2017 г. Проверено 18 апреля 2016 г. — описание БПБ, от версии 2.0 до версии 7.0
- Кристофер, Кен В.; Фейгенбаум, Барри А.; Салига, Шон О. (1990). «9: Использование диска DOS». Разработка приложений с использованием DOS . Уайли . ISBN 0-471-52231-7 . — В разделе «Обработка блока параметров BIOS» авторы описывают эволюцию блока параметров BIOS от MS-DOS версии 2.0 BPB до PC DOS версии 4.0 BPB и помечают каждое поле версией DOS, которая его представила.
- Таунсенд, Карл (1989). «4: Организация и управление дисками». Расширенные экспертные методы MS-DOS для программистов . Говард М. Сэмс . ISBN 0-672-22667-7 . — На рисунке 4.3 представлена диаграмма BPB версии 4.0 и указано, что расположение BPB «не определено Microsoft и может различаться у разных поставщиков». На момент написания книги это было правдой. Microsoft впервые публично задокументировала структуру BPB в наборе инструментов для разработчиков OS/2.
- Верстак, Алекс (10 марта 1998 г.). «Загрузочный сектор FAT» . Архивировано из оригинала 30 июля 2016 г. — Verstak реконструирует блок параметров BIOS. Статья содержит ряд ошибок. Одним из таких является заявление о том, что «наличие EBPB в FAT32 не задокументировано Microsoft». Видеть:
- Майкрософт . «Глава 10 — Диски и файловые системы» . Ресурсный комплект Microsoft Windows 98 . Архивировано из оригинала 9 сентября 2017 г. Проверено 9 сентября 2017 г. - Microsoft документирует BPB версии 4.0 и новый «Блок параметров FAT32 BIOS (BPB)» (BPB версии 7.0) для DOS-Windows 98, который «больше стандартного BPB», имеет «идентичную структуру стандартному BPB». , но это также «включает несколько дополнительных полей».
- Майкрософт . «Глава 32. Основные понятия о дисках и устранение неполадок» . Пакет ресурсов Microsoft Windows 2000 Professional . Архивировано из оригинала 10 августа 2006 г. Проверено 1 июня 2006 г. — Документы Microsoft расширяют BPB как на томах FAT16, так и на FAT32. Он также документирует BPB на томах NTFS.
- Майкрософт . «Как работает NTFS» . Технический справочник по Microsoft Windows Server 2003 NTFS . Архивировано из оригинала 30 июля 2016 г. — В таблице «BPB и расширенные поля BPB на томах NTFS» описаны BPB на томах NTFS. Описания некоторых полей противоречат описаниям, приведенным в Windows 2000 Resource Kit.
- де Бойн Поллард, Джонатан. «Значение и использование поля OEM Name в загрузочных блоках тома» . Часто встречающиеся ответы . Архивировано из оригинала 9 сентября 2017 г. Проверено 4 июня 2016 г. — проблема, которая затрагивает BPB
- Пол, Матиас Р. (25 августа 2004 г.). «НОВОЛТРК.РЕГ» . www.drdos.org . Архивировано из оригинала 4 марта 2016 г. Проверено 17 декабря 2011 г. [1]
- Пол, Матиас Р. (20 февраля 2002 г.). «Нужна DOS 6.22 (не OEM)» . Группа новостей : alt.msdos.programmer . Архивировано из оригинала 9 сентября 2017 г. Проверено 14 октября 2006 г. - о неправильном использовании OEM-маркировок и Volume Tracker от Microsoft.
- Пол, Матиас Р. (12 августа 2002 г.). «Идентификатор файловой системы — «Комитет по стандартам дескрипторов загрузочного сектора alt.os.development» « . Группа новостей : alt.os.development . Архивировано из оригинала 29 мая 2022 г. Проверено 29 июля 2019 г.
- Басс, Уолли (14 февраля 1994 г.). «Размер кластера» . Группа новостей : comp.os.msdos.programmer . Архивировано из оригинала 9 сентября 2017 г. Проверено 14 октября 2006 г.
- Эллиотт, Джон К. (17 апреля 2006 г.) [18 июня 2004 г.]. «Об OEM-идентификаторах» . Seasip.info . 1.3. Архивировано из оригинала 08 апреля 2019 г. Проверено 29 июля 2019 г.
- Дай, Чарльз Э. (20 марта 1999 г.). «Проблемы FDISK» . Делори.com . Архивировано из оригинала 29 июля 2019 г. Проверено 29 июля 2019 г.
- Аноним (15 июня 2004 г.). «Надеюсь, это будет полезно для Microsoft и Caldera DR-DOS и OEM ID» . Гроклав . Проверено 29 июля 2019 г. [ постоянная мертвая ссылка ]
- Килмер, Джен (21 мая 2013 г.). "Злой :) DOS6 FAT" . Группа новостей : comp.os.os2.misc . Архивировано из оригинала 29 мая 2022 г. Проверено 29 июля 2019 г.