Выпуск гипервизора для встраиваемых устройств ACRN 1.2, развиваемого в Linux Foundation

Организация Linux Foundation представила выпуск специализированного гипервизора ACRN 1.2, рассчитанного на применение во встраиваемой технике и устройствах интернета вещей (IoT). Код гипервизора основан на развиваемом компанией Intel легковесном гипервизоре для встраиваемых устройств и распространяется под лицензией BSD.

Гипервизор написан с оглядкой на готовность для выполнения задач реального времени и пригодность к использованию в критически важных системах, при работе на оборудовании с ограниченными ресурсами. Проект пытается занять нишу между гипервизорами, применяемыми в облачных системах и датацентрах, и гипервизорами для промышленных систем с жестким разделением ресурсов. В качестве примера использования ACRN приводятся электронные блоки управления, приборные панели и автомобильные информационные системы, но гипервизор также хорошо подходит для потребительских IoT-устройств и других встраиваемых применений.

ACRN обеспечивает минимальные накладные расходы и состоит из всего 25 тысяч строк кода (для сравнения применяемые в облачных системах гипервизоры насчитывают около 150 тысяч строк кода). При этом ACRN гарантирует низкие задержки (low latency) и адекватную отзывчивость при взаимодействии с оборудованием. Поддерживается виртуализация ресурсов CPU, ввода/вывода, сетевой подсистемы, операций с графикой и звуком. Для совместного обращения к общим для всех VM ресурсам предоставляется набор медиаторов ввода/вывода.

ACRN относится к гипервизорам первого типа (выполняется непосредственно поверх оборудования) и позволяет одновременно выполнять несколько гостевых систем, в которых которых могут запускаться Linux-дистрибутивы, RTOS, Android и другие ОС. Проект состоит из двух основных компонентов: гипервизора и связанной с ним модели устройств c богатым набором медиаторов ввода/вывода, осуществляющих организацию совместного доступа к устройствам между гостевыми системами. Управление гипервизором производится из сервисной ОС, которая выполняет функции хост-системы и содержит компоненты для трансляции обращений других гостевых систем к оборудованию.

0_1567239591.png

Основные изменения в ACRN 1.2:

  • Возможность использования прошивок Tianocore/OVMF в качестве виртуального загрузчика для сервисной ОС (хост-системы), способного запускать Clearlinux, VxWorks и Windows. Поддерживается режим верифицированной загрузки (Secure boot);
  • Поддержка контейнеров Kata;
  • Для гостевых систем с Windows (WaaG) добавлен медиатор для обращения к хост-контроллеру USB (xHCI);
  • Добавлена виртуализация Always Running Timer (ART).

© OpenNet