BIOS boot partition

Из Википедии, бесплатной энциклопедии

Размещение core.img из GNU GRUB на жестких дисках c таблицей разделов GPT

Загрузочный раздел BIOS, (англ. BIOS boot partition) — это раздел на устройстве хранения данных (обычно HDD или SSD), который используется в GNU GRUB на персональных компьютерах на основе BIOS для загрузки операционной системы, когда загрузочное устройство размечено с таблицей разделов GPT[1].

Загрузочный раздел BIOS необходим на устройствах хранения с разметкой GPT для хранения загрузчика GRUB второго этапа. На традиционных устройствах с разделами MBR этот загрузчик размещается в секторах диска, следующих сразу за первым, которые обычно не используются, так как схема разделения не назначает их для каких-либо специальных целей, а инструменты разметки дисков оставляют их пустыми в целях выравнивания разделов по границам физических структур диска. На устройствах на основе GPT эти секторы используются (содержат фактическую таблицу разделов), что требует использования дополнительного раздела. На дисках с разделами на MBR обычно реализуются загрузчики, поэтому часть их кода, хранящаяся в MBR, размер которого ограничен 512 байтами, работает как первая стадия загрузки GRUB, которая служит в первую очередь для загрузки более сложной второй стадии, которая способна, в частности, читать и загружать ядро операционной системы из файловой системы дискового тома.

В варианте 2 этой иллюстрации GRUB 2 хранит свой core.img в разделе BIOS boot partition.

При использовании загрузочного раздела BIOS он содержит программу загрузчика второго этапа, такого, как GRUB 2. Программа загрузки первого этапа — это код, который содержится в основной загрузочной записи (MBR). Использование раздела BIOS boot partition — не единственный способ выполнить классическую (не UEFI) загрузку при использовании жестких дисков с разделами GPT, однако сложные загрузчики, такие как GRUB 2, не могут полностью уместиться в пределах 398–446 байтов MBR, поэтому им необходимо дополнительное пространство для хранения. На дисках MBR такие загрузчики обычно используют секторы, следующие сразу за MBR для этого хранилища; это пространство обычно известно как «разрыв MBR». На дисках GPT нет эквивалентного неиспользуемого пространства, и загрузочный раздел BIOS - это способ официально выделить такое пространство для использования загрузчиком.

Глобальный уникальный идентификатор (GUID) загрузочного раздела BIOS в схеме GPT — 21686148-6449-6E6F-744E-656564454649[2] (который при записи в GPT в формате little endian формирует строку «Hah!IdontNeedEFI»). В GPT на компьютере на базе BIOS загрузочный раздел BIOS в некотором смыле аналогичен системному разделу EFI, который используется системами на основе EFI . Системный раздел EFI содержит файловую систему и файлы, используемые UEFI, в то время как загрузочный раздел BIOS используется в системах на основе BIOS и не имеет файловую систему, в нём записывается необработанный двоичный (исполняемый) код.

Требования к размеру загрузочного раздела BIOS довольно низкие, поэтому он может быть всего около 30 KiB. Однако, поскольку будущим версиям загрузчика может потребоваться больше места, 1 MiB может быть разумным размером загрузочного раздела BIOS. Из-за политики выравнивания разделов по границе 1 MiB, используемой большинством современных инструментов разбиения дисков для обеспечения оптимальной производительности дисков, между таблицей GPT и первым разделом остаётся некоторое пространство, позволяющее разместить загрузочный раздел BIOS. Если загрузочный раздел BIOS создан с использованием этого свободного пространства, он не соответствовует спецификации выравнивания разделов в разметке GPT, но это не очень важно, так как обращение к этому разделу, а, особенно, запись в него, происходит очень редко.

Программы для создания BIOS boot partition

[править | править код]

Cледующие утилиты поддерживают создание и (или) запись в загрузочные разделы BIOS:

  • cfdisk
  • fdisk
  • GNU Parted версии 2.0 или новее
  • GParted, (интерфейс для GNU Parted)
  • gpt (редактор разделов GPT в NetBSD версии 5.0 или новее)
  • gdisk (GPT fdisk)

Примечания

[править | править код]
  1. GUID Partition Table. archlinux.org (19 марта 2015). Дата обращения: 5 марта 2015. Архивировано 31 марта 2015 года.
  2. Section 3.4: BIOS installation // GNU GRUB Installation : [англ.]. — GNU.