Google está trabajando en ofrecer versiones completas del navegador Chrome para el sistema operativo Fuchsia. En Fuchsia, ya se proporciona un motor de navegador basado en el código de Chromium para ejecutar aplicaciones web aisladas, pero el navegador como producto completo y separado no estaba disponible, y la plataforma se desarrolló principalmente para IoT y dispositivos de consumo, como Nest Hub. Recientemente, la situación ha cambiado y se han comenzado a desarrollar capacidades de Fuchsia, orientadas a su uso como plataforma de escritorio.
Entre las mejoras, se están desarrollando cambios que permitirán la entrega de un Chrome completo en Fuchsia. Se planea llevar la versión inicial de Chrome para Fuchsia a una versión lista para el lanzamiento de Chrome 94, programado para el 21 de septiembre. El trabajo de portación se está llevando a cabo gradualmente; en primer lugar, se asegura la posibilidad de compilar una versión reducida, en la que algunas características se reemplazan por marcadores de posición, que a medida que se completa el portado se reemplazarán por implementaciones funcionales del código que consideran las peculiaridades de Fuchsia. Por ejemplo, se está adaptando el sistema de bandeja de Fuchsia, la carga de archivos, la función Click To Call, el trabajo con medios extraíbles, la sincronización, los directorios de usuario, las aplicaciones PWA, la salida de información sobre el uso de memoria y CPU, y la importación de configuraciones de otros navegadores.
Cabe recordar que el sistema operativo Fuchsia ha sido desarrollado por Google desde 2016, teniendo en cuenta las deficiencias en escalabilidad y seguridad presentes en la plataforma Android. El sistema se basa en el microkernel Zircon, que se originó en las contribuciones del proyecto LK, ampliado para su uso en diversas clases de dispositivos, incluidos teléfonos inteligentes y computadoras personales. Zircon amplía 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 capacidades. Los controladores se implementan como bibliotecas dinámicas que funcionan en el 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
