Google ha lanzado el sistema operativo Fuchsia 14, que se utiliza para crear actualizaciones preliminares de firmware para los marcos de fotos Google Nest Hub y Nest Hub Max. Google ha estado desarrollando el sistema operativo Fuchsia desde 2016, abordando las deficiencias de escalabilidad y seguridad de la plataforma. Android.
Cambios importantes en Fuchsia 14:
- Las capacidades de la capa Starnix se han ampliado para permitir el lanzamiento de no modificados. Linux-programas mediante la traducción de interfaces del sistema kernel Linux en llamadas a los subsistemas Fuchsia relevantes. La nueva versión agrega soporte para montar sistemas de archivos remotos, agrega atributos extendidos para enlaces simbólicos a fxfs, agrega puntos de rastreo a la llamada al sistema mmap(), expande la información en /proc/pid/stat, habilita el soporte para fuchsia_sync::Mutex, implementa soporte para O_TMPFILE, pidfd_getfd, sys_reboot(), timer_create, timer_delete, times() y ptrace(), y utiliza la caché de archivos del sistema en la implementación ext4.
- Pila de Bluetooth mejorada. Se agregó soporte para audio en el perfil Bluetooth HSP (HandSet Profile) y se redujeron los retrasos al transmitir audio a través del perfil A2DP.
- Matter, una implementación del estándar para conectar dispositivos en un hogar inteligente, agrega soporte para grupos de actualización y la capacidad de manejar estados transitorios al controlar la luz de fondo.
- La pila de red para todas las plataformas incluye soporte para sockets FastUDP.
- Se agregó soporte para sistemas multinúcleo (SMP) basados en la arquitectura RISC-V.
- Se agregó una API para interactuar con el programador de tareas.
- Se agregó soporte para DeviceTree.
- El controlador para dispositivos de audio con interfaz USB se ha convertido para utilizar el marco DFv2.
Fuchsia se basa en el micronúcleo Zircon, basado en los desarrollos del proyecto LK, ampliado para su uso en varias clases de dispositivos, incluidos teléfonos inteligentes y computadoras personales. Zircon amplía LK con soporte para procesos y bibliotecas compartidas, un nivel de usuario, un sistema de manejo de objetos y un modelo de seguridad basado en capacidades. Los controladores se implementan como bibliotecas dinámicas que se ejecutan en el espacio del usuario, se cargan mediante el proceso devhost y se administran mediante el administrador de dispositivos (devmg, Administrador de dispositivos).
Fuchsia tiene su propia interfaz gráfica escrita en Dart utilizando el marco Flutter. El proyecto también desarrolla el marco de interfaz de usuario Peridot, el administrador de paquetes Fargo, la biblioteca estándar libc, el sistema de renderizado Escher, el controlador Magma Vulkan, el administrador de compuestos Scenic, el archivo MinFS, MemFS, ThinFS (lenguaje FAT en Go) y Blobfs. sistemas, así como el administrador de particiones FVM. Para el desarrollo de aplicaciones, se proporciona soporte para los lenguajes C/C++ y Dart; Rust también está permitido en los componentes del sistema, en la pila de red Go y en el sistema ensamblador del lenguaje Python.
El proceso de inicio utiliza un administrador del sistema, que incluye appmgr para crear el entorno de software inicial, sysmgr para crear el entorno de inicio y basemgr para configurar el entorno del usuario y organizar el inicio de sesión. Para garantizar la seguridad, se propone un sistema avanzado de aislamiento sandbox, en el que los nuevos procesos no tienen acceso a los objetos del kernel, no pueden asignar memoria y no pueden ejecutar código, y se utiliza un sistema de espacio de nombres para acceder a los recursos, que determina los permisos disponibles. La plataforma proporciona un marco para crear componentes, que son programas que se ejecutan en su propio entorno limitado y pueden interactuar con otros componentes a través de IPC.
Fuente: opennet.ru
