Google развивает MicroFuchsia, урезанный вариант ОС Fuchsia для виртуальных машин в Android

Компания Google развивает окружение MicroFuchsia, включающее урезанную версию операционной системы Fuchsia, оптимизированную для выполнение в виртуальных машинах в платформе Android. В состав кодовой базы Android уже начался приём изменений для обеспечения работы
MicroFuchsia. Для запуска виртуальных машин с MicroFuchsia будет использован добавленный в Android 13 фреймворк AVF (Android Virtualization Framework), реализованный на базе гипервизора KVM и инструментария crosvm.

До этого Google использовал AVF для выполнения сборок “Microdroid” (минималистичный вариант Android для виртуальных машин), применяемых для изоляции сторонних системных компонентов в Android, и экспериментировал с запуском гостевых систем с Chromium OS. Причины подготовки MicroFuchsia для Android пока не сообщаются, но предполагается, что компания Google развивает более эффективное и минималистичное окружение для изолированного запуска сервисов для Android, которое потребляет меньше ресурсов, чем окружение microdroid на базе ядра Linux.

Fuchsia базируется на микроядре Zircon, основанном на наработках проекта LK, расширенного для применения на различных классах устройств, включая смартфоны и персональные компьютеры. Zircon расширяет LK поддержкой процессов и разделяемых библиотек, уровнем пользователя, системой обработки объектов и моделью обеспечения безопасности на основе capability. Драйверы реализуются в виде работающих в пространстве пользователя динамических библиотек, загружаемых процессом devhost и управляемых менеджером устройств (devmg, Device Manager).

В процессе загрузки используется системный менеджер, включающий
appmgr для создания начального программного окружения, sysmgr для формирования загрузочного окружения и basemgr для настройки пользовательского окружения и организации входа в систему. Для обеспечения безопасности предлагается продвинутая система sandbox-изоляции, в которой новые процессы не имеют доступа к объектам ядра, не могут выделять память и не могут запускать код, а для доступа к ресурсам применяется система пространств имён, определяющая доступные полномочия. Платформа предоставляет фреймворк для создания компонентов, представляющих собой программы, запускаемые в своём sandbox, которые могут взаимодействовать с другими компонентами через IPC.

Release. Ссылка here.