Intel опубликовал открытую прошивку для инициализации оборудования и загрузки ОС

Компания Intel опубликовала открытый проект Slim Boootloader, в рамках которого подготовлена открытая прошивка, которая может выступать в роли замены BIOS для инициализации оборудования и организации процесса загрузки ОС. Slim Boootloader позиционируется как безопасное, легковесное и высоко оптимизированное решение, которое можно использовать совместно с инструментами и библиотеками фреймворка для разработки UEFI-прошивок EDK II. Исходные тексты Slim Boootloader открыты под лицензией BSD.

Slim Bootloader может выполнять работу по первичной инициализации основных аппаратных компонентов после включения системы, с последующей передачей управления загрузчику, отвечающему за запуск основной операционной системы. Slim Bootloader может применяться OEM-производителями, разработчиками устройств и просто энтузиастами для
подготовки оптимизированных решений для загрузки специализированных систем, обеспечивая высокую скорость загрузки и минимальный размер прошивки.

В настоящее время Slim Boootloader поддерживает только аппаратные платформы на базе микроархитектуры Apollo Lake, включая плату UP Squared, эталонную систему Intel Leaf Hill и модуль MinnowBoard 3, а также загрузку виртуальных машин через QEMU.

Slim Boootloader изначально развивается как модульная система, в которой компоненты инициализации оборудования и загрузки операционной системы разделены, что позволяет добиться хорошей расширяемости и гибкости в настройке. Slim Boootloader может загружать различные операционные системы и имеет встроенные средства для обновления прошивки, контроля целостности (Boot Guard) и верификации загружаемых компонентов по цифровой подписи (Root of Trust). Для диагностики и отладки предоставляется встроенный интерфейс командной строки.

При использовании Slim Boootloader процесс загрузки разбивается на стадии:

  • Stage 1A — начальная инициализации, до доступности памяти;
  • Stage 1B — инициализации основной памяти;
  • Stage 2 — инициализация CPU, контроллеров ввода/вывода, устройств и другого оборудования;
  • Payload — загрузка, проверка и запуск образов ОС или вызов обработчика обновления прошивки.

Поддерживаются следующие виды обработчиков (payload):

  • Встроенный загрузчик, соответствующий спецификации MultiBoot и подходящий для загрузки Linux, гипервизора, Android или исполняемых файлов в формате ELF или PE;
  • Встроенный обработчик обновления прошивки, автоматизирующий безопасную установку обновлений;
  • Внешний обработчик UEFI, базирующийся на наработках TianoСore (открытая реализация UEFI) и подходящий для загрузки Windows. Обработчик предоставляет сервисы для Secure boot, SMM и UEFI runtime;
  • Режим запуска произвольных обработчиков для реализации специфичной функциональности.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.