Wayland (serwer wyświetlania)
Logo programu | |
Demonstracja działania | |
Autor | Kristian Høgsberg |
---|---|
Pierwsze wydanie | 2008 |
Aktualna wersja stabilna | 1.12 / 21 września 2016; ponad 8 lat temu[1] |
Język programowania | C |
System operacyjny | Uniksopodobny |
Rodzaj | zarządzanie grafiką |
Licencja | Licencja MIT, LGPLv2, GPLv2 |
Strona internetowa |
Wayland — protokół 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 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].
Budowa
[edytuj | edytuj kod]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:
- połączenie menedżera okien oraz systemu okien w jednej aplikacji — menedżer może renderować obraz bezpośrednio do pamięci wideo,
- wykorzystanie istniejących funkcji jądra systemu takich, jak Direct Rendering Manager (DRM), Kernel Mode-Setting (KMS) i systemem zarządzania pamięcią Graphics Execution Manager (GEM)[6][7].
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ów
[edytuj | edytuj kod]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].
Zastosowania
[edytuj | edytuj kod]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]. Firmy Intel i Nokia zamierzały wykorzystywać go w systemie MeeGo[11][12], jednak prace nad nim zostały ostatecznie zawieszone. Kontynuacją MeeGo także opartą na Waylandzie jest od 2013 Sailfish OS fińskiej firmy Jolla, wydawany dla urządzeń przenośnych i wbudowanych.
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 | edytuj kod]Przypisy
[edytuj | edytuj kod]- ↑ [ANNOUNCE] wayland 1.12.0. (ang.).
- ↑ Michael Larabel (03 listopada 2008) Wayland: A New X Server For Linux, Phoronix (ang.)
- ↑ DJ Walker-Morgan (6 listopada 2008) New Wayland X server looks to how a modern desktop works, The H (ang.)
- ↑ http://lists.freedesktop.org/archives/wayland-devel/2010-November/000249.html Kristian Høgsberg: Wayland license clarification 2010-11-22 (ang.)
- ↑ http://lists.freedesktop.org/archives/wayland-devel/2011-February/000764.html Florent Gallaire (FLOSS Engineer & Lawyer): Wayland license clarification 2011-02-27 (ang.)
- ↑ wayland google groups (ang.)
- ↑ Red Hat developer creates new X server, Wayland. freeculturenews.com. [zarchiwizowane z tego adresu (2012-06-10)]. (ang.)
- ↑ http://www.phoronix.com/scan.php?page=news_item&px=ODMyNA – Wayland Meets Some Summer Love w/ New Changes (Phoronix) (ang.)
- ↑ Casually Defiant (Kristians Blog) - Premature publicity is better than no publicity (ang.)
- ↑ http://www.markshuttleworth.com/archives/551 Unity on Wayland (ang.)
- ↑ http://www.phoronix.com/scan.php?page=news_item&px=ODYwMQ Where Wayland May First Appear In Use By A Distro (ang.)
- ↑ https://web.archive.org/web/20110718034332/http://permalink.gmane.org/gmane.comp.handhelds.meego.devel/6643 (ang.)
Linki zewnętrzne
[edytuj | edytuj kod]- Oficjalna strona (ang.)
- sources code (ang.)
- Blog Kristiana Høgsberga (ang.)
- Wayland: A New X Server For Linux na Phoronix (ang.)
- Wayland Display Server w serwisie YouTube
- The Wayland Situation: Facts About X vs. Wayland na Phoronix (ang.)