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

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

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

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

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



Источник: http://www.opennet.ru/opennews/art.shtml? num=61500

©  OpenNet