Pred niekoľkými dňami Chrome poslal všetkým používateľom stabilnej vetvy prehliadača zmenu ktoré štandardne aktivuje nový kód na organizovanie výstupu v systémoch so serverom X, na základe použitia vrstva s názvom «Ozón» ktorá abstrahuje interakciu s grafickým subsystémom.
Použitie ozónu umožňuje poskytovať podporu pre X11 a Wayland v rovnakej verzii prehliadača Chrome, bez väzby na konkrétny grafický subsystém.
O Ozone
Ozón je platformová abstrakčná vrstva pod okenným systémom Aura ktorý sa používa pre vstupnú a nízkoúrovňovú grafiku, čím abstrakcia podporuje základné systémy od vstavaných cieľov SoC po nové alternatívne okenné systémy až po X11 v Linuxe, ako je Wayland alebo Mir, na zobrazenie Aura Chromium poskytnutím implementácie rozhrania platformy.
Pretože je žiaduce, aby sa Chrome používal v rôznych projektoch, pracuje sa na zjednodušení migrácie na nové platformy.
Na podporu tohto cieľa sa ozón riadi nasledujúcimi zásadami:
- Rozhrania, nie ifdefs: Rozdiely medzi platformami sa riešia volaním objektu poskytovaného platformou prostredníctvom rozhrania namiesto použitia podmienenej kompilácie. Vnútorné komponenty platformy zostávajú zapuzdrené a verejné rozhranie funguje ako brána firewall medzi neutrálnymi hornými vrstvami platformy (aura, blikanie, obsah atď.) A vrstvami špecifickými pre nižšiu platformu.
- Flexibilné rozhrania: Rozhrania platformy by mali obsahovať presne to, čo prehliadač Chrome od platformy potrebuje, s minimálnymi obmedzeniami implementácie platformy a minimálnymi obmedzeniami používania horných vrstiev.
- Runtime pre všetky platformy: aby sme sa vyhli podmienenej kompilácii v horných vrstvách, umožňuje nám to vytvoriť viac platforiem v binárnom formáte a prepojiť ich za behu.
- Jednoduché vetvenie - Mnoho portov začína ako vidlice a mnohé z nich neskôr zlúčia svoj kód proti prúdu, iné budú mať mimo stromu dlhú životnosť. To je v poriadku a mali by sme tento proces uľahčiť, aby sme podporovali vidlice.
To je dôvod, prečo nezávislosť na zvláštnostiach budovania grafického rozhrania na rôznych systémoch funguje v Chrome je implementovaný pomocou vlastného multiplatformového grafického zásobníka Aura. Aura funguje ako správca okien (shell Aura), ktorý beží na vlastnom kompozitnom serveri a pomocou dostupných nástrojov GPU urýchľuje grafické operácie.
Ak chcete generovať prvky rozhrania, je použitá grafická sada nástrojov Aura UI, ktorá poskytuje vlastnú sadu miniaplikácií, dialógových okien, ovládacích prvkov a obslužných programov udalostí. Zo základných schopností grafického zásobníka (X11, Wayland, Cocoa alebo Windows) sa používa iba výstup v hornej časti koreňového okna.
Všetky konkrétne operácie s grafickým zásobníkom Linuxu sú redukované na jednu vrstvu ľahko vymeniteľný abstraktný ozón. Doposiaľ bola podpora ozónu poskytovaná vo forme možnosti a predvoleným nastavením je starý backend kódovaný v X11.
Práce na preklade zostáv X11 na používanie ozónovej vrstvy prebiehajú od roku 2020 a pre používateľov sa postupné začleňovanie backendu Ozone / X11 v predvolenom nastavení začalo vydaním prehliadača Chrome 92.
To znamená, že pred niekoľkými dňami bol nový backend aktivovaný pre všetkých používateľov systému Chrome Linux. Okrem X11 a Wayland („–ozone-platform = wayland“ a „–ozone-platform = x11“), Ozone vyvíja aj platformy pre výstup prostredníctvom grafických ovládačov KMS / DRM, grafického výstupu ASCII pomocou knižnice libcaca, vykresľovania do formátu PNG obrázky (bez hlavy) a streamovanie prostredníctvom zariadení Chromecast.
Nakoniec sa uvádza, že vyššie uvedený backend je plánovaný, ktorý podporuje prácu iba prostredníctvom X11, bude zastaraná a nakoniec odstránená z kódovej základne (Potom, čo nový backend Ozone / X11 dosiahol paritu vo funkcii a povolil ho v predvolenom nastavení, nemalo zmysel ponechávať ďalšie backend X11 v prehliadači.)
Fuente: https://chromium.googlesource.com
Buďte prvý komentár