Veröffentlichung der Plattform webOS Open Source Edition 2.14

Die neue Version der offenen Plattform webOS Open Source Edition 2.14 wurde veröffentlicht und kann auf verschiedenen tragbaren Geräten, Platinen und Infotainmentsystemen in Autos eingesetzt werden. Als Referenzhardware-Plattform werden Raspberry Pi 4-Platinen betrachtet. Die Plattform wird in einem öffentlichen Repository unter der Apache 2.0-Lizenz entwickelt, und die Entwicklung wird von der Community im Rahmen eines gemeinsamen Modells zur Softwareentwicklung koordiniert.

Die webOS-Plattform wurde ursprünglich 2008 von Palm entwickelt und kam auf den Smartphones Palm Pre und Pixie zum Einsatz. Im Jahr 2020, nach der Übernahme von Palm, ging die Plattform an Hewlett-Packard, die versuchte, sie in ihren Druckern, Tablets, Laptops und PCs zu nutzen. 2012 kündigte HP die Umwandlung von webOS in ein unabhängiges Open-Source-Projekt an und begann 2013 mit der Veröffentlichung des Quellcodes seiner Komponenten. 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, durch das LG versuchte, zu einem offenen Entwicklungsmodell zurückzukehren, andere Teilnehmer zu gewinnen und die Anzahl der in webOS unterstützten Geräte 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.

Veröffentlichung der Plattform webOS Open Source Edition 2.14

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:

  • Zu den standardmäßig angebotenen Anwendungsbeispielen gehört eine Kamera-App. Diese App bietet grundlegende Funktionen zum Fotografieren und Aufnehmen von Videos und kann als Grundlage für die Entwicklung fortschrittlicherer Kameraanwendungen verwendet werden.
  • Es wurde der Übergang zur Bildung von 64-Bit-Builds vollzogen, einschließlich Builds für die Raspberry Pi 4-Platine (rpi4-64) und den Emulator (qemux86). Die Unterstützung von 32-Bit-Builds wurde als veraltet erklärt.
  • Ein Add-on für den offenen Code-Editor Visual Studio Code wurde angeboten, das die Entwicklung von webOS-spezifischen Webanwendungen, Enact-Anwendungen und JavaScript-Diensten erleichtert.
  • Der Early-Warning-Dienst für Speichermangel im System systemd-oomd wurde aktiviert, um zu erkennen, wenn es zu Verzögerungen aufgrund von Ressourcenmangel kommt, und selektiv ressourcenintensive Prozesse in einem Stadium zu beenden, in dem das System noch nicht in einem kritischen Zustand ist und nicht zu intensiv den Cache kürzt und Daten in den Swap-Bereich auslagert.
  • Im Network Manager wurde der Start des Dienstes wpa-supplicant in den Builds für die Raspberry Pi 4-Platinen eingerichtet.
  • Im Build für den Emulator wurden die ausführbaren Dateien occlientbasicops und ocserverbasicops hinzugefügt, die udev-Regeln für das LGE UWB-Modul aktualisiert.
  • Im g-camera-pipeline-Komponenten wurde die Funktionalität im Zusammenhang mit der Audioaufnahme verbessert.
  • Die Browser-Engine wurde auf Chromium 91 aktualisiert.
  • Die Plattformkomponenten zur Erstellung von eingebetteten Linux-Systemen Yocto wurden auf Version 3.1 aktualisiert.
  • Im Memory Manager wurde die Verarbeitung von D-Bus-Signalen implementiert.

Zusätzlich ist das Projekt OpenLGTV erwähnenswert, das sich mit dem Reverse Engineering von Firmware für LG-Fernseher beschäftigt, um ihre Funktionalität zu erweitern, Fehler zu beheben und die Einhaltung von Copyleft-Lizenzen bei der Verwendung offener Komponenten in der Firmware (teilweise offene Firmware) zu überprüfen. Das Projekt entwickelt das Tool epk2extract zur Extraktion und Entschlüsselung von Firmware und verschiedenen Daten von LG, Hisense, Sharp, Philips/TPV und Thomson-Fernsehern sowie ein Repository von webOS Brew-Paketen und ein Tool zur Erlangung von Root-Rechten auf dem Fernseher (RootMyTV). Das Projekt bietet Build-Umgebungen zur Erstellung von Systemabbildern für Fernseher auf Basis der LG NC4- und LG115x-Platinen sowie alte modifizierte Firmware für die Fernseher Saturn S6, Saturn S7 und LG 2010 und 2011 auf Basis von Broadcom-Chips.

Quelle: opennet.ru

60GB SSD 8Gb DDR4