Petr Hosek, que lidera en Google el equipo responsable de los sistemas de construcción, compiladores y herramientas para desarrolladores, presentó el primer dispositivo que vendrá equipado con el sistema operativo Fuchsia. La actualización basada en Fuchsia comenzará a entregarse en los marcos inteligentes para fotos Nest Hub como parte de una actualización experimental para los participantes del programa Google Preview Program.
Si no surgen problemas imprevistos durante la implementación de prueba, la actualización basada en Fuchsia se aplicará a los dispositivos de otros usuarios de Nest Hub, quienes no notarán diferencias ya que la interfaz, basada en el marco Flutter, permanecerá igual, cambiando solo los componentes de bajo nivel del sistema operativo. Anteriormente, los dispositivos Google Nest Hub lanzados desde 2018, que combinan funciones de marco para fotos, sistema multimedia y interfaz para el control del hogar inteligente, utilizaban un firmware basado en la capa Cast y el núcleo de Linux.
Recordemos que, en el marco del proyecto Fuchsia, Google ha estado desarrollando desde 2016 un sistema operativo universal capaz de funcionar en cualquier tipo de dispositivo, desde estaciones de trabajo y smartphones hasta tecnología embebida y de consumo. El desarrollo tiene en cuenta la experiencia adquirida en la creación de la plataforma Android y aborda las deficiencias en escalabilidad y seguridad.
El sistema se basa en un microkernel llamado Zircon, que se origina en el proyecto LK, ampliado para su uso en diversas clases de dispositivos, incluidos smartphones y computadoras personales. Zircon extiende LK con soporte para procesos y bibliotecas compartidas, nivel de usuario, un sistema de gestión de objetos y un modelo de seguridad basado en capabilities. Los controladores se implementan como bibliotecas dinámicas que funcionan en espacio de usuario, cargadas por el proceso devhost y gestionadas por el administrador de dispositivos (devmg, Device Manager).
Fuchsia cuenta con una interfaz gráfica personalizada, desarrollada en el lenguaje Dart utilizando el marco Flutter. El proyecto también incluye el marco para la construcción de interfaces de usuario Peridot, el gestor de paquetes Fargo, la biblioteca estándar libc, el sistema de renderización Escher, el controlador Vulkan Magma, el gestor de composición Scenic, los sistemas de archivos MinFS, MemFS, ThinFS (FAT en Go) y Blobfs, así como el gestor de particiones FVM. Se ofrece soporte para el desarrollo de aplicaciones en lenguajes C/C++, Dart, y se admite el uso de Rust en componentes del sistema, mientras que el stack de red es en Go y el sistema de construcción utiliza Python.

El proceso de arranque utiliza un gestor del sistema, que incluye appmgr para crear el entorno inicial de programación, sysmgr para establecer el entorno de arranque y basemgr para configurar el entorno del usuario y gestionar el inicio de sesión. Para garantizar la seguridad, se propone un avanzado sistema de aislamiento sandbox, en el que los nuevos procesos no tienen acceso a los objetos del núcleo, no pueden reservar memoria ni ejecutar código; para acceder a los recursos, se utiliza un sistema de espacios de nombres que define los permisos disponibles. La plataforma proporciona un marco para crear componentes que son programas que se ejecutan en su propio sandbox y que pueden interactuar con otros componentes a través de IPC.
Fuente: opennet.ru
