Intel развивает открытую прошивку ModernFW и гипервизор на языке Rust
Компания Intel представила на проходящей в эти дни конференции OSTS (Open Source Technology Summit) несколько новых экспериментальных открытых проектов. В рамках инициативы ModernFW ведётся работа по созданию масштабируемой и безопасной замены прошивок UEFI и BIOS. Проект находится на начальной стадии развития, но на данном этапе разработки в предложенном прототипе уже имеется достаточно возможностей для организации загрузки ядра операционной системы. Проект базируется на наработках TianoCore (открытая реализация UEFI) и возвращает изменения в upstream.
ModernFW нацелен на предоставление минималистичных прошивок, пригодных для использования на вертикально интегрируемых платформах, таких как серверы для облачных систем. На подобных системах нет необходимости в поддержании в прошивке кода для обеспечения обратной совместимости и компонентов для универсального применения, свойственных традиционным прошивкам UEFI. Избавление от лишнего кода снижает число возможных векторов для атак и ошибок, что положительно сказывается на безопасности и эффективности. В том числе ведётся работа по выносу из прошивки поддержки устаревших типов устройств и функциональности, которая может выполняться в контексте операционной системы.
Оставлены только необходимые драйверы устройств и предоставлена минимальная поддержка эмулируемых и виртуальных устройств. По возможности, задачи, которые могут выполняться на уровне ОС, переносятся на уровнень операционной системы. Часть кода совместно используется в прошивке и ядре ОС. Предоставляется модульная и настраиваемая конфигурация. Поддержка архитектур пока ограничена системами x86–64, а из загружаемых ОС пока поддерживается только Linux (при необходимости может быть реализована поддержка и других ОС).
Одновременно компания Intel представила проект Cloud Hypervisor, в рамках которого предпринята попытка создания гипервизора на основе компонентов совместного проекта Rust-VMM, в котором кроме Intel также участвуют компании Alibaba, Amazon, Google и Red Hat. Rust-VMM написан на языке Rust и позволяет создавать специфичные для определённых задач гипервизоры. Cloud Hypervisor является одним из таких гипервизоров, который предоставляет высокоуровневый монитор виртуальных машин (VMM), работающий поверх KVM и оптимизированный для решения задач, свойственных для облачных систем. В контексте интересов Intel основной задачей Cloud Hypervisor является запуск современных дистрибутивов Linux с использованием паравиртуализированных устройств на базе virtio.
Поддержка эмуляции сведена к минимуму (ставка делается на паравиртуализацию). В настоящее время поддерживаются только системы x86_64, но в планах имеется и поддержка AArch64. Для избавления от лишнего кода и упрощения настройка CPU, памяти, PCI и NVDIMM производится на этапе сборки. Предусмотрена возможность миграции виртуальных машин между серверами. Из ключевых задач упоминается: высокая отзывчивость, низкое потребление памяти, высокая производительность и сокращение возможных векторов для атак.
© OpenNet