Intel опубликовал открытую прошивку для инициализации оборудования и загрузки ОС
14 сентября 2018 года
Компания Intel опубликовала открытый проект Slim Bootloader, развивающий открытую прошивку, которую можно использовать вместо BIOS для инициализации оборудования и организации процесса загрузки ОС. Slim Bootloader позиционируется как безопасное, легковесное и высоко оптимизированное решение, пригодное в том числе для создания прошивок для ПК, серверов и IoT-устройств. Исходные тексты Slim Bootloader открыты под лицензией BSD.
Slim Bootloader может выполнять работу по первичной инициализации основных аппаратных компонентов после включения системы, с последующей передачей управления загрузчику, отвечающему за запуск основной операционной системы. Проект обеспечивает высокую скорость загрузки при минимальном размере прошивки, что может оказаться полезным OEM-производителям, разработчикам устройств и просто энтузиастам при подготовке решений для загрузки специализированных систем.
В настоящее время Slim Bootloader поддерживает только аппаратные платформы на базе микроархитектуры Apollo Lake, включая плату UP Squared, эталонную систему Intel Leaf Hill и модуль MinnowBoard 3, а также загрузку виртуальных машин через QEMU. Загрузчик может применяться совместно с инструментами и библиотеками от проекта EDK II, в рамках которого ведётся разработка открытых компонентов для создания UEFI-прошивок.
Slim Bootloader изначально развивается как модульная система, в которой компоненты инициализации оборудования и загрузки операционной системы разделены, что позволяет добиться хорошей расширяемости и гибкости в настройке. Slim Bootloader способен загружать различные операционные системы и имеет встроенные средства для обновления прошивки, контроля целостности (Boot Guard) и верификации загружаемых компонентов по цифровой подписи (Root of Trust). Для диагностики и отладки предоставляется встроенный интерфейс командной строки.
При использовании Slim Bootloader процесс загрузки разбивается на стадии:
- Stage 1A - начальная инициализации, до доступности памяти;
- Stage 1B - инициализации основной памяти;
- Stage 2 - инициализация CPU, контроллеров ввода/вывода, устройств и другого оборудования;
- Payload - загрузка, проверка и запуск образов ОС или вызов обработчика обновления прошивки.
Поддерживаются следующие виды обработчиков (payload):
- Встроенный загрузчик, соответствующий спецификации MultiBoot и подходящий для загрузки Linux, гипервизора, Android или исполняемых файлов в формате ELF или PE;
- Встроенный обработчик обновления прошивки, автоматизирующий безопасную установку обновлений;
- Внешний обработчик UEFI, базирующийся на наработках TianoСore EDK II (открытая реализация UEFI) и подходящий для загрузки Windows. Обработчик предоставляет сервисы для Secure boot, SMM и UEFI runtime;
- Режим запуска произвольных обработчиков для реализации специфичной функциональности.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.