Γ stato pubblicato il rilascio della piattaforma aperta webOS Open Source Edition 2.15, utilizzabile su diversi dispositivi portatili, schede e sistemi di infotainment per auto. Come piattaforma hardware di riferimento sono considerate le schede Raspberry Pi 4. La piattaforma Γ¨ sviluppata in un repository pubblico sotto licenza Apache 2.0 e lo sviluppo Γ¨ supervisionato dalla community, aderendo ad un modello di gestione dello sviluppo collaborativo.
La piattaforma webOS Γ¨ stata originariamente sviluppata da Palm nel 2008 ed Γ¨ stata utilizzata sugli smartphone Palm Pre e Pixie. Nel 2010, dopo l'acquisizione di Palm, la piattaforma passΓ² nelle mani di Hewlett-Packard, dopodichΓ© HP tentΓ² di utilizzare questa piattaforma nelle sue stampanti, tablet, laptop e PC. Nel 2012, HP ha annunciato la traduzione di webOS in un progetto open source indipendente e nel 2013 ha iniziato ad aprire il codice sorgente dei suoi componenti. Nel 2013, la piattaforma Γ¨ stata acquistata da Hewlett-Packard da LG ed Γ¨ ora utilizzata su oltre 70 milioni di televisori LG e dispositivi consumer. Nel 2018 Γ¨ stato fondato il progetto webOS Open Source Edition, attraverso il quale LG ha tentato di tornare a un modello di sviluppo aperto, attirare altri partecipanti ed espandere la gamma di dispositivi supportati in webOS.
L'ambiente di sistema webOS viene creato utilizzando strumenti OpenEmbedded e pacchetti base, nonchΓ© un sistema di compilazione e una serie di metadati dal progetto Yocto. I componenti chiave di webOS sono il gestore di sistema e applicazioni (SAM, System and Application Manager), che Γ¨ responsabile dell'esecuzione di applicazioni e servizi, e Luna Surface Manager (LSM), che costituisce l'interfaccia utente. I componenti sono scritti utilizzando il framework Qt e il motore del browser Chromium.
Il rendering viene eseguito tramite un gestore composito utilizzando il protocollo Wayland. Per sviluppare applicazioni personalizzate si propone l'utilizzo di tecnologie web (CSS, HTML5 e JavaScript) e del framework Enact, basato su React, ma Γ¨ anche possibile realizzare programmi in C e C++ con interfaccia basata su Qt. La shell utente e le applicazioni grafiche integrate sono principalmente implementate come programmi nativi scritti utilizzando la tecnologia QML. La shell predefinita di Home Launcher Γ¨ ottimizzata per il controllo touch screen e offre il concetto di mappe rotanti (invece di finestre).
Per archiviare i dati in forma strutturata utilizzando il formato JSON, viene utilizzato lo storage DB8, utilizzando il database LevelDB come backend. Bootd viene utilizzato per l'inizializzazione basata su systemd. Per l'elaborazione dei contenuti multimediali vengono offerti i sottosistemi uMediaServer e Media Display Controller (MDC); PulseAudio viene utilizzato come server audio. Per aggiornare automaticamente il firmware, vengono utilizzati OSTree e la sostituzione della partizione atomica (vengono create due partizioni di sistema, una delle quali Γ¨ attiva e la seconda viene utilizzata per copiare l'aggiornamento).
Principali modifiche nella nuova versione:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΈ ΠΌΡΡΠΈ. ΠΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ LSM (Luna Surface Manager) Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π²Π²ΠΎΠ΄Π° ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΈ ΠΌΡΡΠΈ, Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π½ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΡΠΊΡΠ°Π½Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌΡ ΡΡΡΡΠΎΠΉΡΡΠ²Ρ ΠΈΠ»ΠΈ ΡΠ΅Π»Π΅Π²ΠΈΠ·ΠΎΡΡ Π½Π° Π±Π°Π·Π΅ webOS ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΈ ΠΌΡΡΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠΎΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ°Π½ΡΠΈΠΈ. Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° Π½Π°ΡΡΡΠΎΠ΅ΠΊ (F1) ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ (ΠΊΠ½ΠΎΠΏΠΊΠ° Start ΠΈΠ»ΠΈ Windows).
- Π£Π²Π΅Π»ΠΈΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Qt.
- Π Π΄ΠΎΠΌΠ°ΡΠ½ΠΈΠΉ ΡΠΊΡΠ°Π½ (Home Launcher) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈ ΡΠ΅ΡΡΡΡΡ Π΄Π»Ρ ΠΊΠ°ΡΡΠΎΠΌΠΈΠ·Π°ΡΠΈΠΈ QML-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
- Π ΡΠ΅ΡΠ²ΠΈΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π²ΡΠΊΠΎΠΌ audiod Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π³ΡΠΎΠΌΠΊΠΎΡΡΠΈ.
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π½Π°Π±ΠΎΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π½Π° Π±Π°Π·Π΅ webOS.
- ΠΡΠ°ΡΠ·Π΅ΡΠ½ΡΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½ Π΄ΠΎ Chromium 91 (ΡΠ°Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Chromium 87). Π web-Π΄Π²ΠΈΠΆΠΊΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GPU vsync Π΄Π»Ρ Wayland.
- Π ΡΠΌΡΠ»ΡΡΠΎΡΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ ΡΠΆΠ°ΡΠΈΠ΅ ΡΠ°Π·Π΄Π΅Π»Π° ΠΏΠΎΠ΄ΠΊΠ°ΡΠΊΠΈ (zram) ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π΅Ρ Π²Π°ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ (oomd).
Fonte: opennet.ru