ОС Fuchsia уже начала развертываться на устройствах Nest Hub

Петр Хосек , руководитель команды Google, отвечающей за системы сборки, компиляторы и инструменты разработки, недавно представил первое устройство, поставляемое с операционной системой Fuchsia. Прошивка на базе Fuchsia начнет распространяться на умные фоторамки Nest Hub в рамках экспериментального обновления для участников программы Google Preview.

Упоминается, что если в ходе тестирования не возникнет непредвиденных проблем , прошивка на базе Fuchsia будет применена к устройствам других пользователей Nest Hub , которые не заметят различий, поскольку интерфейс, построенный на фреймворке Flutter, останется прежним. Изменятся только низкоуровневые компоненты операционной системы.

Ранее выпущенные с 2018 года устройства Google Nest Hub, сочетающие в себе функции фоторамки, мультимедийной системы и интерфейса для управления умным домом, использовали прошивки на основе оболочки Cast и ядра Linux.

Напомним, что в рамках проекта Fuchsia компания Google с 2016 года разрабатывает универсальную операционную систему , способную работать на любых типах устройств, от рабочих станций и смартфонов до встроенных и потребительских устройств. Эта разработка ведется с учетом опыта, полученного при создании платформы Android, и направлена ​​на устранение недостатков в масштабируемости и безопасности.

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

Для проекта Fuchsia был разработан собственный графический пользовательский интерфейс, написанный на Dart с использованием фреймворка Flutter. Проект также разрабатывает фреймворк пользовательского интерфейса Peridot, менеджер пакетов Fargo, стандартную библиотеку libc, систему рендеринга Escher, драйвер Magma Vulkan, Scenic Composer, файловые системы MinFS, MemFS, ThinFS (FAT на Go) и Blobfs, а также FVM-разделение. Он также позволяет создавать мобильные приложения для iOS и Android. Рендеринг осуществляется компонентом Escher, работающим через графический API Vulkan.

Пользовательская среда разделена на два компонента: Armadillo и Armadillo User Shell. Armadillo — это портативное приложение, которое может работать на любой Flutter-совместимой платформе, включая Android и iOS (для Android подготовлена ​​демонстрационная сборка в виде APK-файла, позволяющая протестировать интерфейс без установки Fuchsia). Armadillo User Shell — это надстройка над приложением Armadillo, предоставляющая инструменты для взаимодействия со службами Fuchsia через интерфейсы FIDL и организации пользовательской среды поверх системных компонентов Fuchsia OS.

Для разработки приложений предусмотрена поддержка C / C ++, Dart, также разрешен Rust в компонентах системы, в сетевом стеке: Ve и в системе сборки языка Python.

В процессе загрузки используется системный менеджер, который включает appmgr для создания начальной программной среды, sysmgr для создания среды загрузки и basemgr для настройки пользовательской среды и организации входа в систему.

Для обеспечения безопасности предлагается усовершенствованная система изоляции в песочнице, в которой новые процессы не имеют доступа к объектам ядра, не могут выделять память и не могут выполнять код. Для доступа к ресурсам используется система пространств имен, определяющая доступные разрешения. Платформа предоставляет фреймворк для создания компонентов, которые представляют собой программы, работающие в своей песочнице и способные взаимодействовать с другими компонентами посредством межпроцессного взаимодействия (IPC).


Добавить в качестве предпочтительного источника в Google