Компания 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 с поддръжка на процеси и споделени библиотеки, потребителско ниво, система за управление на обекти и модел за сигурност, основан на capabilities. Драйверите се реализират като динамични библиотеки, работещи в потребителското пространство, зареждани от процеса devhost и управлявани от мениджъра на устройства (devmg, Device Manager).
В процеса на зареждане се използва системен мениджър, включващ appmgr за създаване на начална програмна среда, sysmgr за формиране на зареждаща среда и basemgr за настройка на потребителската среда и организиране на вход в системата. За осигуряване на безопасност се предлага напреднала система за sandbox изолация, при която новите процеси нямат достъп до обектите на ядрото, не могат да отделят памет и не могат да стартират код, а за достъп до ресурсите се прилага система от пространства с имената, която определя наличните правомощия. Платформата предоставя фреймворк за създаване на компоненти, представляващи програми, изпълнявани в собствен sandbox, които могат да взаимодействат с други компоненти чрез IPC.
Източник: opennet.ru
