03.2 (Конспект) PreSystemBoot

Рассмотримм настройки VirtгalBox:

Как происходит загрузка операционной системы?

С постоянного запоминающего устройства копируются в оперативную память программы и начинают выполняться.

Загрузчик ПЗУ умеет загружать только один сектор с внешнего устройства. В этом секторе лежит загрузчик, спецефичный для этого устройства.

Вторичный загрузчик (произвольного размера) запускается далее. Он может загружать несколько ядер операционной системы.

Для того, чтобы загрузка была нормальной требуется соблюдать независимость всех уровней.

Существует проблема зависимости: Если функционирование более низкого уровня управляется с более высоким уровнем. То принаписании изменении одного компонента перестанет работать другой.

Ещё одна проблема состоит в распозновании внешних устройств. То есть ядро должно быть очень "умным", т.к. невозможно поддерживать контроллеры всех устройств. Для этого подгружаются соответствующие модули.

Функции вторичного загрузчика поделены на две части:

  1. Загрузить ядро
  2. Найти все нужные модули и скомпоновать с их помощью ядро

Стартовый виртуальный диск - маленькая ОС, которая содержит в себе все нужные драйвера и умеет их компоновать с ядром.

Команда df показывает какие файловые системы в данный момент используется.

Команда lsblk показывает все имеющиеся в наличии блочные устройства.

Новая последовательность загрузки:

У нас есть раздел на диске 128мб с файловой системой FAT16. При старте компьютера из ПЗУ загружается маленькая ОС, которая называется EFI. Это универсальный загрузчик, который нужен для доверенной загрузки. Также он может выполнять программы. У него есть собственные драйвера. Может проверить подпись ядра.

Windows работает по-другому.

HSE/ArchitectureOS/03_PreSystemBoot/Conspect (последним исправлял пользователь VasilyKireenko 2020-06-10 00:38:48)