Mir vs Weston vs X.org.
X11 Niechciany król dżungli.
X11 to protokół, określa on co aplikacja ma zrobić aby wyświetlić graficzne dane na ekranie. X11 jest bardzo starym protokołem (powstał w 87' !!!), nie rozwijanym i nie modyfikowanym od samego powstania. X11 nie nadaje się i nie przewiduje zastosowań jakich oczekuje dzisiejszy użytkownik. Problem ten obchodzono przez tworzenie rozszerzeń do tego protokołu. Pozytywnym efektem jest częściowa przydatność X11 dla dzisiejszego środowiska. Niestety oznacza to że cały bagaż X11 dalej musi być dostępny pod ręką, a to utrudnia dodawanie nowych funkcjonalności (rozszerzenia muszą być zgodne z samym X11) jak i utrzymanie kodu. A część oczekiwań po prostu nie może być spełniona w X11 (bezbłędne ramki są niemożliwe).X.org to implementacja protokołu X11. I nie znajdziemy szczęśliwego programisty X.org. I nie znajdziemy też takiego który by nie przywitał z radością następcy X11 jak i samego X.org'a.
Innymi słowy X11/X.org to chodzący trup, o którego dba się bo nie ma alternatywy...
Wayland Czyli młody i rezolutny pretendent do tronu.
Wayland to protokół (tak jak X11), określa on co aplikacja ma zrobić aby wyświetlić graficzne dane na ekranie. Innymi słowy Wayland chce spełniać rolę którą pełni X11 tylko dużo lepiej. Wayland powstał w 2008 roku więc bierze on pod uwagę dorobek w dziedzinie systemów operacyjnych, nieudane pomysły które się pojawiły na przestrzeni ostatnich 20 lat (i ich nie naśladuje!) oraz chce spełnić wszystkie oczekiwania dzisiejszego użytkownika (perfekcyjne ramki!).
Weston to implementacja protokołu Wayland. Większość programistów Westona to programiści X.org którzy wreszcie mogą pracować nad kodem który nie będzie ich straszył po nocach.
Mir Czyli bękart o którym nikt nie wiedział a który chce zagarnąć tron.
Mir to (jak na razie) zarówno nazwa dla protokołu jak i jej implementacji, który ma spełniać te same zadania co X.org/X11/Weston/Wayland tylko lepiej. Mir jest bardzo młody (nieco ponad rok trwają prace programistów), i powstaje ze specyficznych wymagań Ubuntu. Jako dystrybucja która ma działać na szerokiej gamie sprzętu Ubuntu potrzebuje serwera wyświetlania (X.org/Weston nimi są), który będzie w stanie współpracować ze sterownikami pisanymi pod Androida, czy własnościowymi sterownikami Nvidii i AMD. X.org nie działa na Androidzie, Weston ma specyficzne wymagania (choć Wayland mógłby wszędzie działać). Tak więc Canonical chce stworzyć coś co ma rozwiązać problem X.org ale od razu dla całej gamy urządzeń na których działa Linuks(ubuntu).
Wojna o tron, którego król i tak nie odda.
X.org/X11 nie odejdą prędko. Ilość programów które już działają z nimi jest ogromna. Liczba aplikacji które mogą działać z czystym Westonem relatywnie znikoma, a Mir jest za młody na coś innego niż "dema".
Zarówno twórcy Westona jak i Mir'a są tego świadomi, obydwie społeczności chcą zapewnić zgodność z X.org'iem przez obsługę X.orga jako klienta Westona/Mira. Tak że aplikacje wymagające X.org będą myślały, że tylko on jest obecny w systemie. Podczas gdy X.org będzie tylko obsługiwał klientów X11 a resztę pracy zostawiał Weston'owi/Mir'owi.
A więc król żyje i szybko nie umrze. Skąd więc woja o tron?
Jak już pisałem X.org/X11 to dobre projekty jednak obarczone założeniami które dobrze wyglądały 20 lat temu. Czas na zmianę.
Ten kto wygra i zostanie następcą będzie dyktował założenia na kolejne 20 lat. Jako że nikt nie chce wylądować za 10 lat z koszmarnym kodem i protokołem nie spełniającym oczekiwać które pojawią się za 10 lat, to i dyskusja o tym co i jak zrobić nabiera emocjonalnych kolorów.
A czy nas interesuje kto wygra?
Mir/Canonical oferuje jedną zaletę. Canonical (a w zasadzie Valve..), może skutecznie zachęcić producentów GPU do tworzenia sterowników pod Mir'a. Wayland jak na razie nie miał sukcesu w zakresie (Nvidia+AMD wolą poczekać, a kompatybilność z androidowymi sterownikami nie był priorytetem).
Z drugiej strony Wayland/Weston to projekt który skupia ogrom wiedzy i doświadczenia w postaci weteranów walki z X.orgiem. Ludzi którzy dokładnie wiedzą czego potrzebują. A sam Weston jest bardziej gotowy niż Mir.
Wydaje się więc że o ile oba projekty będą w stanie spełnić techniczne wymagania, to zwycięstwo jednego albo drugiego nie będzie miało ogromnego znaczenia. A przewidywanie który projekt szybciej będzie gotowy wydaje się być zwykłym wróżeniem z fusów (przynajmniej dokupi Canonical nie pokarze jak szybko jest w stanie rozwijać Mir'a).