Lumipat ang Chrome upang magamit ang layer ng Ozone sa mga X11 system

google chrome

Ilang araw na nakalipas Nagpadala ang Chrome ng pagbabago sa lahat ng mga gumagamit ng matatag na sangay ng browser na, bilang default, pinapagana ang isang bagong code upang ayusin ang output sa mga system na may isang X server, batay sa paggamit ng isang layer na tinatawag na «Ozone» na naka-abstract ng pakikipag-ugnay sa graphic na subsystem.

Paggamit ng Ozone pinapayagan na magbigay ng suporta para sa X11 at Wayland sa parehong pagbuo ng Chrome, nang hindi nakatali sa isang tukoy na subssystem ng graphics.

Tungkol sa Ozone

Ang Ozone ay isang layer ng abstraction ng platform sa ibaba ng Aura window system na ginagamit para sa mga input at mababang antas ng graphics, sa gayon ang abstraction ay sumusuporta sa mga napapailalim na system mula sa mga built-in na target ng SoC hanggang sa mga bagong alternatibong system ng windowing hanggang sa X11 sa Linux tulad ng Wayland o Mir upang ipakita ang Aura Chromium sa pamamagitan ng pagbibigay ng isang pagpapatupad ng interface ng platform.

Dahil nais na magamit ang Chrome sa iba't ibang mga proyekto, ginagawa ang trabaho upang mapadali ang paglipat sa mga bagong platform.

Upang suportahan ang layuning ito, sinusunod ng Ozone ang mga sumusunod na prinsipyo:

  • Mga interface, hindi ifdefs: Ang mga pagkakaiba sa pagitan ng mga platform ay pinangangasiwaan ng pagtawag ng isang bagay na ibinigay ng platform sa pamamagitan ng isang interface sa halip na gumamit ng kondisyunal na pagtitipon. Ang panloob na mga bahagi ng platform ay mananatiling naka-encapsulate at ang pampublikong interface ay gumaganap bilang isang firewall sa pagitan ng mga walang kinikilingan na itaas na layer ng platform (aura, flicker, nilalaman, atbp.) At ang mga mas mababang tukoy na layer ng platform. 
  • Mga naaangkop na interface: Ang mga interface ng platform ay dapat na encapsulate nang eksakto kung ano ang kailangan ng Chrome mula sa platform, na may kaunting paghihigpit sa pagpapatupad ng platform, pati na rin ang kaunting mga paghihigpit sa paggamit ng mga itaas na layer.
  • Runtime para sa lahat ng mga platform: upang maiwasan ang may kondisyon na pagtitipon sa itaas na mga layer ay pinapayagan kaming bumuo ng maraming mga platform sa isang binary at i-link ang mga ito sa runtime.
  • Simpleng pagsasanga - Maraming mga daungan ang nagsisimula bilang mga tinidor at marami sa kanila sa paglaon ay pinagsasama ang kanilang code sa paitaas, ang iba ay magkakaroon ng mahabang habang-buhay sa labas ng puno. Mabuti ito, at dapat nating padaliin ang prosesong ito upang hikayatin ang mga tinidor.

Ito ang dahilan ang kalayaan ng mga kakaibang katangian ng pagbuo ng isang grapikong interface sa iba't ibang mga system na tumatakbo sa Chrome ipinapatupad ito gamit ang sarili nitong Aura cross-platform graphics stack. Ang Aura ay kumikilos bilang isang window manager (Aura shell), na tumatakbo sa pamamagitan ng sarili nitong server na nagsasama at gumagamit ng mga magagamit na tool ng GPU upang mapabilis ang mga pagpapatakbo ng grapiko.

Upang makabuo ng mga elemento ng interface, ginagamit ang toolkit ng graphics ng Aura UI, na nagbibigay ng sarili nitong hanay ng mga widget, dayalogo, kontrol, at handler ng kaganapan. Sa mga kalakip na kakayahan ng stack ng graphics (X11, Wayland, Cocoa, o Windows), ang output lamang sa tuktok ng root window ang ginagamit.

Ang lahat ng mga tukoy na pagpapatakbo sa stack ng graphics ng Linux ay kumulo sa isang layer madaling mapapalitan ang abstract ozone. Sa ngayon ang suporta ng Ozone ay ibinigay sa anyo ng isang pagpipilian at ang default ay ang lumang backend, naka-encode sa X11.

Ang pagtatrabaho sa pagsasalin ng X11 builds upang magamit ang layer ng Ozone ay nagaganap mula noong 2020 at para sa mga gumagamit, ang unti-unting pagsasama ng backend ng Ozone / X11 bilang default ay nagsimula sa paglabas ng Chrome 92.

Iyon ay, ilang araw na ang nakakalipas, ang bagong backend ay naaktibo para sa lahat ng mga gumagamit ng Chrome Linux. Bilang karagdagan sa X11 at Wayland ("–ozone-platform = wayland" at "–ozone-platform = x11"), bumubuo rin ang Ozone ng mga platform para sa output sa pamamagitan ng mga driver ng KMS / DRM graphics, output ng graphics ng ASCII gamit ang libcaca library, pag-render sa PNG mga imahe (walang ulo) at streaming sa pamamagitan ng mga aparatong Chromecast.

Sa wakas, nabanggit na ang backend sa itaas ay pinlano, na sumusuporta lamang sa trabaho sa pamamagitan ng X11, ay hindi na gagamitin at kalaunan ay aalisin mula sa codebase (Matapos maabot ng bagong backend ng Ozone / X11 ang pagkakapareho sa pagpapaandar at paganahin ito bilang default, walang point na mapanatili ang isa pang X11 na backend sa browser.)

Fuente: https://chromium.googlesource.com


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.