Что делает загрузочный носитель загрузочным?

Из любопытства, что делает носитель загрузочным? Ссылки на объяснения будут оценены.

Возможно, несколько подробностей о том, как организованы загрузочные носители, могут помочь определить «что делает загрузочный носитель загрузочным».

Процедура загрузки отличается в зависимости от архитектуры, поэтому я буду придерживаться стандартного ПК (т.е. архитектуры x86).

Во-первых, чтобы быть «загруженным», среда должна быть выбрана BIOS после более позднего самотестирования (POST). Для этого среда должна быть помечена как загрузочная , что означает, что она должна иметь загрузочную подпись в первом секторе. Это первое, что делает средний загрузочный файл.

Затем BIOS загружается и передает руку этому загрузочному сектору (независимо от того, что там хранится … поэтому он вполне может быть подходящей программой реального режима, но давайте придерживаться «нормальной» схемы). Итак, чтобы быть загрузочным, среда должна иметь такой загрузочный сектор .

Если среда разделена, в этом секторе устанавливается основная загрузочная запись (MBR). Этот код будет отвечать за проверку таблицы разделов и обнаружение раздела с установленным флагом загрузочного флага . Затем MBR загрузит первый сектор этого раздела, который содержит то, что называется записью загрузки тома (VBR). Обратите внимание, что в случае нераспределенного носителя VBR находится в первом секторе среды и поэтому непосредственно вызывается BIOS.

VBR содержит программу начальной загрузки . Эта программа должна инициализировать машину (например, активировать расширенную память через A20 Gate, переключиться из реального режима в защищенный режим и т. Д.), Чтобы установить надлежащую среду для «современного» кода для запуска, загрузить этот код в память, а затем «перейти» "К нему. Вышеупомянутый код может быть либо ядром ОС в случае программы загрузчика, либо многозагрузочной системой (например, GRUB, LILO) в случае цепной загрузки. Во всяком случае, в конце концов, для запуска загрузочного носителя необходим исполняемый код.

Что следует (например, декомпрессии ядра, начальной установки ramdisk, загрузки модулей в случае гибридных ядер или серверов, начинающихся на микроядрах и т. Д.) Не имеет строгого отношения с точки зрения организации загрузочных носителей.

Примечание. Я описал процесс жестких дисков и дискет. Случай с компакт-дисками очень похож. Кроме того, чтобы быть загрузочным, компакт-диск должен соответствовать спецификации El-Torito, которая является расширением стандарта ISO9660. Первоначально компакт-диск должен был содержать загрузочный образ гибкого диска (например, изображение 1,44 М), которое обрабатывалось BIOS как дискета и загружалось соответственно. Более поздние аппаратные средства позволяют загружаться напрямую без этого обхода.

Что делает загрузочный носитель загрузочным

  • Стандарты для загрузочных носителей, которые определяют такие вещи, как:
    • Аппаратная платформа, для которой применим загрузчик.
    • Местоположение на носителе загрузочного программного обеспечения.
    • Процесс загрузки этого программного обеспечения.
  • Внедрение этих стандартов в аппаратное обеспечение, к которому могут быть подключены носители.

В статье Wikipedia описывается процесс загрузки.

Давайте будем гением компьютера.