Die Veröffentlichung der offenen Plattform webOS Open Source Edition 2.19 wurde bekannt gegeben, die auf verschiedenen tragbaren Geräten, Motherboards und Infotainmentsystemen im Automobil eingesetzt werden kann. Die Raspberry Pi 4-Platinen werden als Referenzhardware-Plattform betrachtet. Die Plattform entwickelt sich in einem öffentlichen Repository unter der Lizenz Apache 2.0, und die Entwicklung wird von der Gemeinschaft geleitet, die sich an einem gemeinsamen Entwicklungsmanagementmodell orientiert.
Die webOS-Plattform wurde ursprünglich 2008 von Palm entwickelt und auf den Smartphones Palm Pre und Pixie verwendet. Nach der Übernahme von Palm im Jahr 2010 ging die Plattform in den Besitz von Hewlett-Packard über, die versuchte, diese Plattform in ihren Druckern, Tablets, Laptops und PCs zu verwenden. 2012 kündigte HP an, webOS in ein unabhängiges Open-Source-Projekt zu überführen, und begann 2013 mit der Veröffentlichung des Quellcodes seiner Komponenten. Im Jahr 2013 wurde die Plattform von LG von Hewlett-Packard übernommen und wird nun in über 70 Millionen LG-Fernsehern und Verbraucherelektronik eingesetzt. 2018 wurde das Projekt webOS Open Source Edition gegründet, über das LG versuchte, zu einem offenen Entwicklungsmodell zurückzukehren, andere Teilnehmer zu gewinnen und die unterstützten Geräte in webOS zu erweitern.
Die Systemumgebung von webOS wird unter Verwendung von Werkzeugen und Basis-Paketen aus OpenEmbedded sowie einem Build-System und einem Satz von Metadaten des Yocto-Projekts gebildet. Zu den Schlüsselkomponenten von webOS gehören 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 gestaltet. Die Komponenten sind mit dem Qt-Framework und der Chromium-Browsing-Engine geschrieben.
Die Darstellung erfolgt über einen Compositing-Manager, der das Wayland-Protokoll verwendet. Für die Entwicklung von Benutzeranwendungen wird empfohlen, Webtechnologien (CSS, HTML5 und JavaScript) sowie das auf React basierende Enact-Framework zu verwenden, jedoch ist auch die Erstellung von Programmen in C und C++ mit einer Qt-basierten Benutzeroberfläche möglich. Die Benutzeroberfläche und die integrierten grafischen Anwendungen sind hauptsächlich als native Programme implementiert, die mit QML-Technologie erstellt wurden. Standardmäßig wird die Home Launcher-Oberfläche angeboten, die für die Steuerung über Touchscreens optimiert ist und das Konzept wechselnder Karten (anstatt Fenstern) bietet.
Zur Speicherung von Daten in strukturierter Form im JSON-Format wird das DB8-Speichersystem eingesetzt, das LevelDB als Backend verwendet. Bootd auf Basis von systemd wird zur Initialisierung verwendet. Für die Verarbeitung von Multimedia-Inhalten stehen die Teilsysteme uMediaServer und Media Display Controller (MDC) zur Verfügung, wobei als Soundlösung Server PulseAudio verwendet wird. Für die automatische Aktualisierung der Firmware kommen OSTree und atomare Partitionsersetzungen zum Einsatz (es werden zwei Systempartitionen erstellt, von denen eine aktiv ist und die andere für das Kopieren des Updates verwendet wird).
Die wesentlichen Änderungen in der neuen Version:
- Der Home-Bildschirm (Home App) wurde verbessert und bietet jetzt eine Statuszeile mit einem Überblick über die am häufigsten genutzten Funktionen. Es wurde Unterstützung für die freie Bearbeitung des Inhalts der Anwendungspaneele bereitgestellt. Neue Bildschirmgesten wurden hinzugefügt.

- Die Video Call-Anwendung zur Durchführung von Videogesprächen und virtuellen Videokonferenzen ist enthalten. Derzeit wird nur die Verbindung über Cisco Webex und Microsoft Teams unterstützt.

- Eine Befehlszeilenumgebung zur Erstellung eigener Anwendungen mit Blockchain-Wallets wurde bereitgestellt, die das Ausführen solcher Operationen wie das Signieren von Transaktionen und das Protokollieren dieser Transaktionen in der Blockchain erleichtert.
- Im Enact Browser wurde die Unterstützung für einen Dienst zur Erkennung von Malware hinzugefügt, und ein Popup-Fenster zur Abfrage von Berechtigungen beim Benutzer wurde implementiert.
- Im Audio Server audiod wurde die Unterstützung für die Erkennung von integrierten und externen Audiogeräten hinzugefügt. Im Systemdienst (Sys Service) wurde die Unterstützung für sekundäre Audiogeräte (subdevices), integrierte Soundkarten und MIPI-Kameras implementiert. In PulseAudio wird die ECNR-Technologie (Echo Cancellation Noise Reduction) genutzt.
- Die Plattformkomponenten zur Erstellung eingebetteter Linux-Systeme mit Yocto wurden auf Version 4.0 aktualisiert.
- Die Browser-Engine wurde auf die Version Chromium 94 aktualisiert (zuvor wurde Chromium 91 verwendet). Für webOS-Webanwendungen wurde die Möglichkeit zur Nutzung von Gamepads hinzugefügt.
- Die Schriftarten Noto wurden aktualisiert (Unterstützung für Unicode 15.0.0 hinzugefügt).
- Der Wechsel zu Qt 6.4 wurde vollzogen. Das Web-Framework Enact wurde auf Version 4.5.0 aktualisiert.
Quelle: opennet.ru


