Fuchsia (sistema operativo)

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar

Fuchsia es un sistema operativo basado en capacidades de código abierto desarrollado por Google. A diferencia de los sistemas operativos basados ​​en Linux de Google, como Chrome OS y Android, Fuchsia se basa en un kernel personalizado llamado Zircon. Debutó públicamente como un repositorio git autohospedado en agosto de 2016 sin ningún anuncio corporativo oficial. Después de años de desarrollo, el lanzamiento oficial de su producto fue en Google Nest Hub de primera generación, reemplazando su Cast OS original basado en Linux.

Historia

En agosto de 2016, los medios de comunicación informaron sobre un misterioso repositorio de código fuente publicado en GitHub, que revelaba que Google estaba desarrollando un nuevo sistema operativo llamado Fuchsia. No se hizo ningún anuncio oficial, pero la inspección del código sugirió su capacidad para ejecutarse en varios dispositivos, incluidos los sistemas de "infoentretenimiento del tablero" para automóviles, dispositivos integrados como semáforos, relojes digitales, teléfonos inteligentes, tabletas y PC. Su arquitectura difiere completamente de Android y Chrome OS basados ​​en Linux debido en parte a su kernel Zircon único, anteriormente llamado Magenta.

En mayo de 2017, Ars Technica escribió sobre la nueva interfaz de usuario de Fuchsia, una actualización de su interfaz de línea de comandos en su primera presentación en agosto. Un desarrollador escribió que Fuchsia "no es un juguete, no es un proyecto del 20%, no es un vertedero de algo muerto que ya no nos importa". Aunque los usuarios pueden probar Fuchsia, nada "funciona", porque "son un montón de interfaces de marcador de posición que no hacen nada". Encontraron múltiples similitudes entre la interfaz de Fuchsia y Android, incluida una pantalla de aplicaciones recientes, un menú de configuración y una vista de pantalla dividida para ver varias aplicaciones a la vez. Varios medios de comunicación escribieron sobre los vínculos aparentemente estrechos del proyecto con Android, y algunos especularon que Fuchsia podría ser un esfuerzo por "de una manera que solucione sus problemas.

En enero de 2018, Google publicó una guía sobre cómo ejecutar Fuchsia en Pixelbooks. Esto fue implementado con éxito por Ars Technica, donde los expertos quedaron impresionados con el progreso, notaron que las cosas estaban funcionando y estaban especialmente satisfechos con el soporte de hardware y los múltiples punteros del mouse.

Se agregó un dispositivo Fuchsia al ecosistema de Android en enero de 2019 a través del Proyecto de código abierto de Android (AOSP). Google habló sobre Fuchsia en Google I/O 2019. Hiroshi Lockheimer, vicepresidente sénior de Chrome y Android, lo describió como uno de los experimentos de Google en torno a nuevos conceptos de sistemas operativos.

El 1 de julio de 2019, Google anunció el sitio web oficial del proyecto de desarrollo con el código fuente y la documentación. Aproximadamente un año y medio después, el 8 de diciembre de 2020, Google anunció que estaba "expandiendo el modelo de código abierto de Fuchsia", incluida la publicación de listas de correo, la introducción de un modelo de gobernanza, la publicación de una hoja de ruta y el uso de un rastreador de problemas públicos.

En mayo de 2021, los empleados de Google confirmaron que habían implementado Fuchsia en el mercado de consumo por primera vez, dentro de una actualización de software del Google Nest Hub de primera generación que reemplaza su software existente basado en Chromecast. La actualización no contiene cambios para el usuario en el software o la interfaz de usuario del dispositivo. Después de la ola inicial de actualizaciones para dispositivos de vista previa, la actualización se implementó en todos los dispositivos Nest Hub en agosto de 2021.

Visión general

Fuchsia lleva el nombre del color fucsia, que es una combinación de rosa (también el nombre en clave del avanzado sistema operativo Pink de Apple de la década de 1990) y púrpura (también el nombre en clave del iPhone de primera generación). Su interfaz de usuario y aplicaciones están escritas en Flutter, un kit de desarrollo de software que permite capacidades de desarrollo multiplataforma para Fuchsia, Android e iOS. Flutter produce aplicaciones de Dart. Escher es el motor de renderizado de gráficos basado en Vulkan, con soporte específico para "sombras suaves volumétricas", un elemento que Ars Technica escribió, "parece hecho a la medida para ejecutar las pautas de interfaz de 'Diseño de materiales' de sombras pesadas de Google".

El kit de desarrollo de software multiplataforma Flutter permite a los usuarios instalar partes de Fuchsia en dispositivos Android.

Se planea ejecutar una versión especial de Android Runtime para Fuchsia desde un archivo FAR, el equivalente de la APK de Android.

Núcleo

Fuchsia se basa en un nuevo núcleo de transmisión de mensajes, llamado Zircon por el mineral zircon. Su código base se derivó del de Little Kernel (LK) para dispositivos integrados, destinado a usos de recursos bajos para una amplia variedad de dispositivos. LK fue desarrollado por Travis Geiselbrecht, quien también fue coautor del kernel NewOS utilizado por Haiku, una reimplementación de software libre de BeOS.

Zircon está escrito principalmente en C++, con algunas partes en lenguaje ensamblador. Se compone de un núcleo con un pequeño conjunto de servicios de usuario, controladores y bibliotecas que son necesarios para que el sistema arranque, se comunique con el hardware y cargue los procesos del usuario. Sus características actuales incluyen el manejo de hilos, la memoria virtual, la intercomunicación de procesos y la espera de cambios en el estado de los objetos.

Está muy inspirado en los núcleos de Unix, pero difiere mucho. Por ejemplo, no admite señales similares a Unix, pero incorpora programación basada en eventos y el patrón de observador. La mayoría de las llamadas al sistema no bloquean el hilo principal. Los recursos se representan como objetos en lugar de archivos, a diferencia de los sistemas Unix tradicionales.