Die Veröffentlichung der offenen Plattform webOS Open Source Edition 2.15 wurde veröffentlicht, die auf verschiedenen tragbaren Geräten, Boards und Car-Infotainmentsystemen verwendet werden kann. Raspberry Pi 4-Boards gelten als Referenz-Hardwareplattform. Die Plattform wird in einem öffentlichen Repository unter der Apache 2.0-Lizenz entwickelt und die Entwicklung wird von der Community kuratiert, wobei ein kollaboratives Entwicklungsmanagementmodell eingehalten wird.
Die webOS-Plattform wurde ursprünglich 2008 von Palm entwickelt und auf den Smartphones Palm Pre und Pixie verwendet. Im Jahr 2010, nach der Übernahme von Palm, ging die Plattform in die Hände von Hewlett-Packard über, woraufhin HP versuchte, diese Plattform in seinen Druckern, Tablets, Laptops und PCs einzusetzen. Im Jahr 2012 kündigte HP die Überführung von webOS in ein unabhängiges Open-Source-Projekt an und begann 2013 mit der Offenlegung des Quellcodes seiner Komponenten. Die Plattform wurde 2013 von Hewlett-Packard von LG übernommen und wird mittlerweile auf mehr als 70 Millionen LG-Fernsehern und Consumer-Geräten eingesetzt. Im Jahr 2018 wurde das webOS Open Source Edition-Projekt gegründet, mit dem LG versuchte, zum offenen Entwicklungsmodell zurückzukehren, andere Teilnehmer zu gewinnen und die Palette der in webOS unterstützten Geräte zu erweitern.
Die webOS-Systemumgebung wird mithilfe des OpenEmbedded-Toolkits und der Basispakete sowie des Build-Systems und des Metadatensatzes aus dem Yocto-Projekt erstellt. Die Schlüsselkomponenten von webOS sind der System- und Anwendungsmanager (SAM, System and Application Manager), der für die Ausführung von Anwendungen und Diensten verantwortlich ist, und der Luna Surface Manager (LSM), der die Benutzeroberfläche bildet. Die Komponenten werden mit dem Qt-Framework und der Chromium-Browser-Engine geschrieben.
Das Rendern erfolgt über einen Composite-Manager, der das Wayland-Protokoll verwendet. Für die Entwicklung benutzerdefinierter Anwendungen wird vorgeschlagen, Webtechnologien (CSS, HTML5 und JavaScript) und das auf React basierende Enact-Framework zu verwenden. Es ist jedoch auch möglich, Programme in C und C++ mit einer auf Qt basierenden Schnittstelle zu erstellen. Die Benutzeroberfläche und eingebetteten grafischen Anwendungen werden meist als native Programme implementiert, die mit QML-Technologie geschrieben werden. Standardmäßig wird der Home Launcher angeboten, der für die Touchscreen-Bedienung optimiert ist und das Konzept aufeinanderfolgender Karten (anstelle von Fenstern) bietet.
DB8-Speicher dient zur Speicherung strukturierter Daten im JSON-Format, wobei die LevelDB-Datenbank als Backend fungiert. Bootd, basierend auf systemd, wird zur Initialisierung verwendet. Die Subsysteme uMediaServer und Media Display Controller (MDC) stehen zur Verarbeitung von Multimedia-Inhalten und Audio zur Verfügung. Server PulseAudio wird verwendet. Für automatische Firmware-Updates kommen OSTree und atomarer Partitionsaustausch zum Einsatz (es werden zwei Systempartitionen erstellt, von denen eine aktiv ist und die andere zum Kopieren des Updates verwendet wird).

Wichtigste Änderungen in der neuen Version:
- Tastatur- und Mausunterstützung hinzugefügt. Der Verbundmanager LSM (Luna Surface Manager) ist darauf ausgelegt, Eingaben über Tastatur und Maus und nicht nur über einen Touchscreen zu steuern und zu organisieren. Sie können beispielsweise eine Tastatur und eine Maus an ein webOS-basiertes Mobilgerät oder einen Fernseher anschließen und als Workstation verwenden. Außerdem wurde Unterstützung für Tastaturkürzel für den schnellen Zugriff auf Einstellungen (F1) und die Programmstartoberfläche (Start- oder Windows-Taste) hinzugefügt.
- Erhöhte Rendering-Leistung und verbesserte Animationsqualität in Anwendungen, die die Qt-Bibliothek verwenden.
- Dem Home Launcher wurden Komponenten und Ressourcen zum Anpassen von QML-Anwendungen hinzugefügt.
- Unterstützung für Lautstärkeverfolgung zum audiod-Audioverwaltungsdienst hinzugefügt.
- Es wird eine Reihe von Beispielanwendungen und -lösungen basierend auf webOS vorgeschlagen.
- Die Browser-Engine wurde auf Chromium 91 aktualisiert (zuvor wurde Chromium 87 verwendet). Die Web-Engine unterstützt GPU-vsync für Wayland.
- Der Emulator ermöglicht die Komprimierung der Swap-Partition (zram) und die Behandlung von nicht genügend Arbeitsspeicher (oomd).
Source: opennet.ru
