Se ha publicado la versión de la plataforma abierta webOS Open Source Edition 2.15, que puede aplicarse en varios dispositivos portátiles, placas y sistemas de infoentretenimiento automotrices. Se consideran las placas Raspberry Pi 4 como plataforma de hardware de referencia. La plataforma se desarrolla en un repositorio público bajo la licencia Apache 2.0, y el desarrollo está supervisado por la comunidad, siguiendo un modelo de gestión colaborativa.
La plataforma webOS fue inicialmente desarrollada por Palm en 2008 y se utilizó en los teléfonos inteligentes Palm Pre y Pixie. En 2010, tras la adquisición de Palm, la plataforma pasó a Hewlett-Packard, que intentó utilizarla en sus impresoras, tabletas, portátiles y PCs. En 2012, HP anunció la conversión de webOS en un proyecto abierto independiente y en 2013 comenzó a abrir los códigos fuente de sus componentes. Ese mismo año, la plataforma fue adquirida por LG, que ahora la utiliza en más de 70 millones de televisores y dispositivos de consumo. En 2018, se fundó el proyecto webOS Open Source Edition, a través del cual LG intentó regresar a un modelo de desarrollo abierto, atraer a otros participantes y ampliar la gama de dispositivos compatibles con webOS.
El entorno del sistema webOS se forma utilizando herramientas y paquetes básicos de OpenEmbedded, así como un sistema de compilación y un conjunto de metadatos del proyecto Yocto. Los componentes clave de webOS son el gestor de sistema y aplicaciones (SAM, System and Application Manager), que es responsable de la ejecución de aplicaciones y servicios, y el Luna Surface Manager (LSM), que forma la interfaz de usuario. Los componentes están escritos utilizando el marco Qt y el motor de navegador Chromium.
La representación se lleva a cabo a través de un gestor de composición que utiliza el protocolo Wayland. Para el desarrollo de aplicaciones de usuario, se sugiere utilizar tecnologías web (CSS, HTML5 y JavaScript) y el framework Enact, basado en React, aunque también es posible crear programas en C y C++ con una interfaz basada en Qt. La interfaz de usuario y las aplicaciones gráficas integradas se implementan principalmente como programas nativos escritos utilizando la tecnología QML. Por defecto, se ofrece la interfaz Home Launcher, optimizada para la gestión desde pantallas táctiles y que presenta un concepto de tarjetas que se alternan (en lugar de ventanas).
Para el almacenamiento de datos en formato estructurado utilizando JSON, se aplica el almacenamiento DB8, que usa como backend la base de datos LevelDB. Para la inicialización se utiliza bootd basado en systemd. Para el procesamiento de contenido multimedia, se ofrecen los subsistemas uMediaServer y Media Display Controller (MDC), mientras que para el audio se usa PulseAudio. servidores Para la actualización automática del firmware, se utiliza OSTree y el reemplazo atómico de particiones (se crean dos particiones del sistema, una de las cuales está activa y la otra se utiliza para copiar la actualización).

Los cambios principales en la nueva versión son:
- Se ha añadido soporte para teclado y ratón. El gestor de composición LSM (Luna Surface Manager) se ha adaptado para gestionar y organizar la entrada mediante teclado y ratón, no solo a través de la pantalla táctil. Por ejemplo, se puede conectar un teclado y un ratón a un dispositivo móvil o a un televisor basado en webOS para usarlo como estación de trabajo. También se ha añadido soporte para combinaciones de teclas para acceder rápidamente a la configuración (F1) y a la interfaz de inicio de aplicaciones (botón de Inicio o Windows).
- Se ha mejorado el rendimiento de renderizado y se ha incrementado la calidad de la animación en aplicaciones que utilizan la biblioteca Qt.
- Se han añadido componentes y recursos al lanzador de inicio (Home Launcher) para la personalización de aplicaciones QML.
- En el servicio de gestión de sonido audiod se ha agregado soporte para el seguimiento del volumen.
- Se ha presentado un conjunto de ejemplos de aplicaciones y soluciones basadas en webOS.
- El motor del navegador se ha actualizado a Chromium 91 (anteriormente se utilizaba Chromium 87). En el motor web se ha implementado soporte para GPU vsync en Wayland.
- El emulador ha incluido la compresión de la partición de intercambio (zram) y el procesamiento de falta de memoria (oomd).
Fuente: opennet.ru
