Před pár dny Chrome poslal změnu všem uživatelům stabilní větve prohlížeče které ve výchozím nastavení aktivuje nový kód pro organizaci výstupu v systémech se serverem X, na základě použití vrstva zvaná «ozón» který abstrahuje interakci s grafickým subsystémem.
Použití ozónu umožňuje poskytovat podporu pro X11 a Wayland ve stejné verzi Chrome, aniž by byl svázán s konkrétním grafickým subsystémem.
O Ozónu
Ozón je vrstva abstrakce platformy pod okenním systémem Aura který se používá pro vstupní a nízkoúrovňové grafiky, čímž abstrakce podporuje základní systémy od vestavěných cílů SoC po nové alternativní okenní systémy až po X11 v Linuxu, jako je Wayland nebo Mir, pro zobrazení Aura Chromium poskytnutím implementace rozhraní platformy.
Protože je žádoucí, aby byl Chrome používán v celé řadě projektů, pracuje se na usnadnění migrace na nové platformy.
Na podporu tohoto cíle dodržuje Ozone následující zásady:
- Rozhraní, ne ifdefs: Rozdíly mezi platformami se řeší voláním objektu poskytovaného platformou prostřednictvím rozhraní místo použití podmíněné kompilace. Interní komponenty platformy zůstávají zapouzdřené a veřejné rozhraní funguje jako brána firewall mezi neutrálními horními vrstvami platformy (aura, blikání, obsah atd.) A specifickými vrstvami nižší platformy.
- Flexibilní rozhraní: Rozhraní platformy by měla obsahovat přesně to, co Chrome od platformy potřebuje, s minimálním omezením implementace platformy a minimálním omezením používání horních vrstev.
- Runtime pro všechny platformy: abychom se vyhnuli podmíněné kompilaci v horních vrstvách, umožňuje nám to vytvořit více platforem v jedné binárce a propojit je za běhu.
- Jednoduché větvení - Mnoho portů začíná jako vidlice a mnoho z nich později sloučí svůj kód proti proudu, jiné budou mít dlouhou životnost mimo strom. To je v pořádku a měli bychom tento proces usnadnit, abychom podpořili vidlice.
To je důvod, proč nezávislost na zvláštnostech budování grafického rozhraní na různých systémech fungující v prohlížeči Chrome je implementován pomocí vlastního multiplatformního grafického zásobníku Aura. Aura funguje jako správce oken (Aura shell), běží přes vlastní kompozitní server a pomocí dostupných nástrojů GPU zrychluje grafické operace.
Chcete -li generovat prvky rozhraní, je použita sada grafických nástrojů Aura UI, který poskytuje vlastní sadu widgetů, dialogů, ovládacích prvků a obsluh událostí. Ze základních schopností grafického zásobníku (X11, Wayland, Cocoa nebo Windows) je použit pouze výstup v horní části kořenového okna.
Všechny konkrétní operace s grafickým balíčkem Linuxu se scvrkávají na jednu vrstvu snadno vyměnitelný abstraktní ozón. Doposud byla podpora ozónu poskytována formou opce a výchozí je starý backend s kódováním X11.
Práce na překladu sestavení X11 na použití ozónové vrstvy probíhají od roku 2020 a pro uživatele začalo postupné začlenění backendu Ozone / X11 ve výchozím nastavení s vydáním prohlížeče Chrome 92.
To znamená, že před několika dny byl nový backend aktivován pro všechny uživatele Chrome Linux. Kromě X11 a Wayland („–ozone-platform = wayland“ a „–ozone-platform = x11“) vyvíjí Ozone také platformy pro výstup prostřednictvím grafických ovladačů KMS / DRM, grafický výstup ASCII pomocí knihovny libcaca, vykreslování do PNG obrázky (bez hlavy) a streamování přes zařízení Chromecast.
Nakonec je to zmíněno výše uvedený backend je plánován, který podporuje práci pouze prostřednictvím X11, budou zastaralé a nakonec odstraněny z kódové základny (Poté, co nový backend Ozone / X11 dosáhl parity ve funkcích a ve výchozím nastavení jej povolil, nemělo smysl ponechávat v prohlížeči další backend X11.)
zdroj: https://chromium.googlesource.com