Wayland (serwer wyświetlania)

Waylandprotokół systemu okien wraz z towarzyszącą mu biblioteką go implementującą stworzoną dla systemu Linux w języku C. Umożliwia uproszczenie procesu wyświetlania grafiki w systemach uniksowych poprzez połączenie w jednej aplikacji menedżera kompozycji oraz systemu okien. Projekt zapoczątkował w roku 2008 Kristian Høgsberg (w czasie gdy pracował w firmie Red Hat). Głównym powodem jego powstania było niezadowolenie z niedostosowanej do współczesnych wymagań architektury systemu X, obecnie najpopularniejszego rozwiązania tego typu. Høgsberg wyraził swój cel słowami „każda klatka będzie doskonała, przez co rozumiem, że aplikacje będą w stanie kontrolować renderowanie wystarczająco (dobrze), że nigdy nie zobaczymy przycinania się, lagów, przerysowywania, lub migotania“[2][3].

Wayland
Logo Wayland
Logo programu
Ilustracja
Demonstracja działania
Autor Kristian Høgsberg
Pierwsze wydanie 2008
Aktualna wersja stabilna 1.12 / 21 września 2016; ponad 4 lata temu[1]
Aktualna wersja testowa 1.15.94
(17 sierpnia 2018) [±]
Język programowania C
System operacyjny Uniksopodobny
Rodzaj zarządzanie grafiką
Licencja Licencja MIT, LGPLv2, GPLv2
Strona internetowa
Serwer wyświetlania Wayland opiera się na EGL

Wayland jest wolnym oprogramowaniem. Kristian Høgsberg zadeklarował, że źródła bibliotek libwayland-server i libwayland-client będą docelowo miały licencję LGPLv2 (pierwotnie były dostępne na licencji MIT), a źródła demo kompozytora i klientów również będą docelowo miały licencję LGPLv2 (pierwotnie były na licencji GPLv2)[4][5].

BudowaEdytuj

 
Prezentacja działania serwera Wayland

W klasycznym podejściu uniksowym system okien oraz menedżer okien były niezależnymi aplikacjami, przy czym ta pierwsza stanowiła warstwę pośredniczącą między menedżerem (oraz pracującymi pod jego kontrolą aplikacjami), a sprzętem. Wraz z rozwojem aplikacji multimedialnych oraz pojawieniem się menedżerów kompozycji wykorzystujących do rysowania interfejsu zaawansowane efekty graficzne, taka architektura zaczęła stanowić wąskie gardło. Aby obejść te ograniczenia, coraz więcej funkcji serwera X zaczęło przejmować jądro oraz poszczególne menedżery.

Podstawowym założeniem architektury projektu Wayland jest uproszczenie procesu zarządzania oknami poprzez usunięcie serwera X jako warstwy pośredniczącej, poprzez:

Od czerwca 2010 roku kompozytor Waylanda używa tylko OpenGL ES (przedtem OpenGL)[8].

Wayland może także gościć serwer X, zapewniając tym samym wsteczną kompatybilność.

Zainteresowanie mediówEdytuj

Wayland pierwotnie ukazał się jako nowy projekt w serwisie Phoronix roku 2008, w artykule zatytułowanym "Wayland: A New X Server For Linux". Kristian w odpowiedzi na zainteresowanie mediów stwierdził, że nie jest to nowy X-serwer, lecz nowy serwer wyświetlania, zaznaczając jednocześnie, że projekt jest jeszcze młody i niedojrzały[9].

ZastosowaniaEdytuj

4 listopada 2010 roku Mark Shuttleworth ogłosił, że bliżej nieokreślone przyszłe wersje Ubuntu (lecz nie 11.04) będą wykorzystywały Wayland jako ich system okien w interfejsie Unity[10] (plany te zostały porzucone na rzecz ich własnego rozwiązania Mir). Firmy Intel wraz z Nokią zamierzały wprowadzić go w swoim systemie MeeGo kiedy tylko będzie gotowy[11][12], lecz prace nad systemem zostały zawieszone. Schedę po MeeGo przejęła fińskie przedsiębiorstwo Jolla, która w swoim systemie bazującym na MeeGo, Sailfish OS będzie wykorzystywać Wayland.

Od wersji 25 system operacyjny Fedora wykorzystuje Wayland jako system wyświetlania w przypadku użycia domyślnego dla tej dystrybucji środowiska graficznego GNOME.

W sierpniu 2017 firma Canonical zapowiedziała, że w wersji 17.10 systemu operacyjnego Ubuntu domyślną sesją będzie środowisko graficzne GNOME z Waylandem jako systemem wyświetlania. W wersji 17.04 system wyświetlania Wayland był dostępny w repozytoriach jako element środowiska GNOME.

Wayland traktowany jest jako zamiennik serwera X.org, lecz ma także inne potencjalne zastosowania, jak choćby goszczenie innych serwerów X i sesji logowania GDM.

Zobacz teżEdytuj

PrzypisyEdytuj

Linki zewnętrzneEdytuj