Wayland

Wayland
Logo
Weston, referenční implementace Wayland serveru
Weston, referenční implementace Wayland serveru
Vývojář freedesktop.org a kol.
První vydání 30. září 2008[1]
Aktuální verze 1.19.0, Weston: 8.0.0 (27. ledna 2021[2][3])
Operační systém GNU/Linux, FreeBSD[4]
Vyvíjeno v C
Typ softwaru Okenní systém, zobrazovací server
Licence MIT, GPL pro dema[5]
Web wayland.freedesktop.org
Některá data mohou pocházet z datové položky.
① evdev modul Linux kernelu přijímá událost a posílá ji Wayland kompozitoru.
② Wayland kompozitor projde scenegraph a rozhodne, které z oken má událost dostat. Scenegraph je vše, co je na obrazovce a Wayland kompozitor ví, které transformace nad kterými elementy provedl, tudíž může vybrat správné okno a převést souřadnice obrazovky do lokálních souřadnic okna metodou obrácené transformace. Počet typů aplikovatelných transformací oken záleží pouze na tom, co umí kompozitor, tedy pokud dokáže spočítat zpětné převedení vstupních událostí.
③ V případě X to je tak, že když klient dostane událost, X aktualizují UI, avšak v případě Waylandu probíhá rendering přes EGL a klient jen odesílá kompozitoru požadavky na změnu určité oblasti.
④ Wayland kompozitor tedy sbírá od klientů požadavky typu „damage“ [ˈdæmidž] (říkají: „Okno je poškozené, překreslit“) a poté provede rekompozici/překreslí obrazovku. Kompozitor pak může přímo zavolat ioctl k naplánování překreslení obrazovky pomocí KMS.

Wayland (anglická výslovnost [ˈwejlənd]) je v informatice název svobodného protokolu určeného pro Linux a další Unix-like operační systémy, který specifikuje komunikaci zobrazovacího serveru (tzv. Wayland kompozitoru) s jeho klienty a zároveň název knihovny, která tento protokol implementuje.

Wayland poskytuje kompozitním správcům oken metody pro přímou komunikaci s aplikacemi, zobrazovacím zařízením a vstupním zařízením. Aplikace vykreslují grafiku do svého vlastního bufferu. Složením těchto bufferů vzniká výsledná podoba zobrazených oken. Toto je mnohem jednodušší a efektivnější metoda než použití kompozitního správce oken ve spojení s X Window System.

Součástí projektu Wayland je i referenční implementace Wayland kompozitoru jménem Weston ([ˈwestn]).

Pozadí

Kristian Høgsberg (krh), softwarový inženýr, který pracuje na GNU/Linux graphics stack, začal v roce 2008 ve svém volném čase pracovat na Waylandu. Jeho dřívější práce na X serveru zahrnovala Unity, AIGLX a také se zapojil do vytváření DRI2.

Wayland je svobodný software šířený pod licencí LGPL v2. K listopadu 2010 Wayland fungoval pouze se svobodnými a otevřenými ovladači pro grafické karty Intel, AMD a nVIDIA (ovladače nouveau [nuvo]). nVIDIA nemá zatím v plánu podporovat Wayland ve svých uzavřených ovladačích.

Høgsberg uvedl, že na jméno Wayland přišel při projíždění městem Wayland v americkém státě Massachusetts.

Plánované přijetí

MeeGo (8. 9. 2010)

Intel pracuje na portování MeeGo na Wayland.

Fedora (9. 11. 2010)

Adam Jackson (ajax) řekl, že Fedora je nakloněná výchozímu použití Waylandu.

KDE

Spolu s uvolněním KDE SC 4.7 bude KWin (okenní manažer použitý v KDE) podporovat výstup pomocí OpenGL ES. Prozatím byl vytvořen základní port KWin pro Wayland. KDE SC 4.8, které by mělo vyjít v lednu roku 2012 by mělo nabídnout podporu pro Wayland běžící nad X serverem. V létě roku 2012 by měla vyjít verze 4.9 běžící přímo na Waylandu.

Compiz

Společnost Canonical, vlastník Ubuntu, najala Sama Spilsburyho, hlavního vývojáře Compizu. Jeho prací bylo přepsat všechny závislosti na X serveru do modulu. To umožní snadnější použití Compizu jako display serveru pro Wayland. Canonical plánuje pomoci portovat Compiz do OpenGL ES, což je požadavkem pro Wayland display server.

Zpětná kompatibilita s X

X11 aplikace jsou podporovány X serverem, spuštěným jako klientská aplikace Waylandu, ačkoli zatím podporuje pouze X.org ovladače Intelu. Qt aplikace mohou přepínat za běhu mezi grafickými backendy jako jsou X a Wayland pomocí volby -platform. V lednu roku 2011 byla podpora Waylandu přesunuta do větve Lighthouse ([ˈlaitˌhaus]) hlavního Qt depositáře. V prosinci roku 2010 přidal GTK+ předběžnou podporu pro přepínání backendů za běhu, říkaje: „zajímavé jsou X11+Wayland nebo Quartz+X11“. V lednu roku 2011 GTK+ Wayland backend získal podporu pro multiple-backend a byl přesunut do gdk-wayland-backend větve hlavního GTK+ Git repozitáře. V dubnu 2011 byla tato větev připojena k hlavní větvi GTK+.

Reference

V tomto článku byl použit překlad textu z článku Wayland (display server protocol) na anglické Wikipedii.

  1. wayland. Wayland Compositor Infrastructure [online]. 2008-09-30 [cit. 2017-08-25]. Dostupné online. (anglicky) 
  2. Wayland 1.19.0
  3. Weston 8.0.0
  4. LARABEL, Michael. Wayland Begins Porting Process To FreeBSD [online]. Phoronix, 2013-02-16 [cit. 2017-08-25]. Dostupné online. (anglicky) 
  5. Wayland FAQ [online]. [cit. 2011-02-17]. Dostupné v archivu pořízeném dne 2011-03-07. (anglicky) 

Externí odkazy

Zdroj