Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Wayland - szybki rzut okiem

Mając chwilę wolnego czasu postanowiłem sprawdzić, jak w praktyce działa Wayland - nowy serwer/protokół wyświetlania dostępny na Linuksa. Zrobiło się o nim głośno przy okazji premiery konkurencyjnego produktu marketingowego. Zanim jednak przejdę dalej, chciałbym zwrócić uwagę na jedną rzecz. Otóż Wayland miał już 2 stabilne wydania. Pierwsze oznaczone jako 1.0 z 22 października 2012, a także niedawno wydaną wersję 1.1 z 15 kwietnia tego roku. Nie zapominając oczywiście o pomniejszych wydaniach poprawkowych, które również ukazują dosyć regularnie. Jednak to co najważniejsze z punktu widzenia programistów, to stabilne API/ABI. Wspominam o tym, bo już kilka razy zdarzyło mi się przeczytać, że projekt nadal tkwi w przysłowiowym lesie.

RebeccaBlackOS - distro z Waylandem na pokładzie

RebeccaBlackOS, pomimo swojej specyficznej nazwy to system ciekawy z wielu powodów, a najważniejszym z nich jest oczywiście wsparcie dla Waylanda. Obraz iso, można pobrać ze strony projektu. System powinien bez problemu uruchomić się na wszystkich kartach graficznych, posiadających wsparcie dla otwartych sterowników, co w praktyce oznacza większość. Osobiście polecam odpalić system z pendrive, używając UNetbootin. Podczas wstępnego uruchomienia pokazuje nam się menu z dostępnymi opcjami. Jeśli odpalamy iso na fizycznym komputerze najlepiej wybrać 1 opcję. W przypadku maszyny wirtualnej (virtualbox itp), prawdopodobnie koniecznie będzie wskazanie, pozycji "framebuffer" z wybraną przez nas rozdzielczością.

Jako ciekawostkę dodam, że menadżer logowania został napisany z użyciem basha i zenity, przez użytkownika tworzącego ów system. Po zalogowaniu przechodzimy do właściwego pulpitu.

Domyślnym kompozytorem Waylanda jest Weston i to właśnie jego panel widać na zrzucie ekranu. Weston jest referencyjnym kompozytorem Waylanda, co w praktyce oznacza, że dostarcza on jedynie podstawowych funkcji powłoki pulpitu (panel), pełniąc rolę kompozytora systemowego. Po więcej informacji odsyłam do oficjalnej dokumentacji.

Kubuntu pod maską

RebeccaBlackOS bazuje na Kubuntu i wdać to począwszy od domyślnego menu, którym jest, a jakże, znany wszystkim użytkownikom KDE, Kickoff.

XWayland

Na płycie znajduje się szereg typowych desktopowych aplikacji (dolphin, firefox itp), których uruchomienie możliwe jest dzięki XWayland. W skrócie XWayland jest to odpowiednio zmodyfikowany serwer Xorg, którego celem jest zapewnienie wstecznej kompatybilności. W dłuższej perspektywie czasu, należy się spodziewać, że aplikacje będą wspierać Waylanda natywnie. Póki to nie nastąpi, XWayland będzie potrzebny.

Bez problemu udało mi się uruchomić standardowy zestaw aplikacji KDE (dolphin, ustawienia systemowe). Podobnie było również w przypadku Firefox, nawet filmy na YouTube (html5), nie sprawiały większych problemów, włącznie z trybem pełnoekranowym.

Jedynym błędem, aczkolwiek bardzo irytującym, było nieprzewidywalne zachowanie wyskakujących okien (menu kontekstowe, menu programów, itp), które potrafiły pojawiać się w dowolnych pozycjach na ekranie, przez co nieraz użyłem skrótu Ctrl+Q do zamknięcia danego okna.

Aplikacje natywne

Listę natywnych portów bibliotek, z użyciem których napisane są poszczególne aplikacje można zobaczyć tutaj. Są wśród nich Qt 5, GTK+ 3.0, EFL, SDL. Oto niektóre z przykładów, które można znaleźć w systemie.

Jeśli komuś to nie wystarczy zawsze można poobracać terminalem ;)

Podczas moich krótkich testów, większość z dostępnych aplikacji natywnych działa bez większych problemów. Jeśli ktoś chce, może również zainstalować system na dysku twardym.

Dodam tylko, że na potrzeby tego wpisu zrzuty ekranu były robione z użyciem VirtualBox, mimo, iż większość testów przeprowadziłem z live usb na karcie Nvidia GeForce GT 640. Spowodowane to było faktem, że nijak nie udało mi się uchwycić zrzut ekranu za pomocą domyślnego skrótu klawiaturowego.

Wayland na Raspberry Pi

Informacją, która przeszła bez większego rozgłosu jest implementacja Waylanda na popularnym komputerku Raspberry Pi.

Video mówi samo za siebie, doskonale pokazując jak wielka jest różnica pomiędzy Xorg a Waylandem, nawet na słabszym sprzęcie.

Więcej informacji:http://www.raspberrypi.org/archives/4053

KWin i wsparcie dla Waylanda

Począwszy od KDE 4.11, KWin zyska (eksperymentalną) obsługę Waylanda, co doskonale widać na tym filmiku.

Więcej informacji o tym jak uruchomić KDE 4.11 na Waylandzie można znaleźć na blogu jednego z deweloperów. Skoro już o tym piszę, warto również zajrzeć na profil g+ wspomnianego dewelopera, gdzie na bieżąco można śledzić postęp prac.

 

linux oprogramowanie

Komentarze

0 nowych
Rafal_F   3 #1 01.07.2013 02:01

W internecie można też spotkać porównanie wydajności Xorg, oraz nakładki na Wayland, XWayland. I okazuje się, że działa to całkiem dobrze. W niektórych przypadkach nawet lepiej od Xorg'a.
http://openbenchmarking.org/result/1306302-UT-MERGE572853
http://openbenchmarking.org/result/1306306-UT-MERGE610023

elzear   5 #2 01.07.2013 08:30

Ten Weston troszkę zalatuje prehistorią :) Wiem, że tworzony jest jedynie w celu testów.
Lucas_ czy może sprawdzałeś już jak działa KDE na Waylandzie?

dragonn   11 #3 01.07.2013 09:18

@elzear Weston jest stworzony po to żeby inni dev np. KDE wiedzieli jak zaimplementować swojego menadżera okien.

@Rafal_F a wiesz co jest najlepsze, że XWayland jest szybszy czasami od Xorg, w przeciwieństwie do XMir który zawsze jest odrobinę wolniejszy.... a XMir podobno jest żywcem skopiowany od Wayland i tylko dostosowany do działania z Mir, to wstępnie ujawnia jak się plasuje wydajność obu serwerów.

  #4 01.07.2013 09:44

@dragonn ja wiem że flame na Canonical jest teraz w modzie, ale proszę nie siej FUDu.

Jak dotąd z newsów wynika że XWayland i XMir to dwie różne rzeczy, działające na innych zasadach, więc nie mogli tego po prostu zerżnąć. Cytat z DP:

"(xwayland) – uproszczony serwer X, działający jako KLIENT Waylanda, na którym bezpośrednio można uruchamiać aplikacje X11."

"opracowano STEROWNIK x.org o nazwie Xmir, który współdziała z serwerem x.org na takiej samej zasadzie jak zwykłe sterowniki kart graficznych (np. nvidia czy fglrx)."

  #5 01.07.2013 11:43

Jedna uwaga - w przypadku 1.0 oraz 1.1 stabilność oznacza bardziej ustabilizowanie API niż zupełna gotowość do używania w dystrybucjach. Wynika to w dużej części z tego, że Wayland sam w sobie jest nieużywalny, bez całej otoczki, która teraz dopiero powoli powstaje. Bardzo powoli. Myślę, że trochę się to ruszy jak będzie stabilny KWin ze wsparciem Waylanda oraz kiedy pojawi się pierwsza stabilna dystrybucja, z Wayland/KWin/KDE, ale zdaje się, że to jeszcze trochę potrwa. Dopiero wtedy będzie można rozmawiać, czy sam serwer jest stabilny.

Chyba w 2010 jak zapowiadano rychłe wydanie stabilnego Waylanda, twórcy dystrybucji mówili, że będą potrzebowali ok roku czasu na jego wykorzystanie. W praktyce zapowiada się, że potrwa to wyraźnie dłużej, bo zdaje się, żadna popularna dystrybucja nie zapowiedziała jeszcze użycia Waylanda w konkretnym wydaniu. Do tego czasu, dla przeciętnego końcowego użytkownika, to tylko ciekawostka.

eimi REDAKCJA  17 #6 01.07.2013 11:46

Ano, za wiele Canonical o XMir nie powiedział dotąd, ale na pewno nie jest to klon XWaylanda - po prostu służy do podobnych celów. Nic więcej.

dragonn   11 #7 01.07.2013 12:49

@Kaelson sam tego nie wymyśliłem http://phoronix.com/forums/showthread.php?81840-XWayland-2D-Performance-Appears-... ale możliwe że to FUD. Ale z tym:
"(xwayland) – uproszczony serwer X, działający jako KLIENT Waylanda, na którym bezpośrednio można uruchamiać aplikacje X11."

To z tego co się orientuje to właśnie xwayland wymaga spatchowanego X.org, chwilowa instalacja xwayland zastępuje całego Xorg, w przyszłość patch ma być załączony oficjalnie do X.org.

EDIT
Specjalnie sprawdziłem w aur:

aur/xwayland-git 1.12.2.113.gc45678e-1 (9)
Xorg Server with Wayland Support

Tak że nie mamy tutaj do czynienia z "uproszczonym serwer Xorg"

Autor edytował komentarz.
Kintoki   6 #8 01.07.2013 13:15

@dragonn "XMir który zawsze jest odrobinę wolniejszy"
Ponad 50% spadek wydajności w niektórych przypadkach to "odrobinę"? :)

dragonn   11 #9 01.07.2013 13:18

@Kintoki bardziej zwracałem uwagę na wynik przy których prawie doganiał Xorg :P. Nie chciałem być aż tak niedobry dla Canonical-a :D.

bastardo   2 #10 01.07.2013 13:21

@Kaleson & eimi (redakcja):
Ja wiem, że DP to siedlisko dzieci Ubuntu, ale przynajmniej stwarzajcie pozory jakiejkolwiek rzetelności, jeśli ktoś ma was traktować poważnie.

Co ciekawego na ten temat ma do powiedzenia Canonical:

"We have integrated X, leveraging the prior XWayland work, to run on top of Mir (XMir) and started initial porting efforts for toolkits with a focus on Qt5. "

http://samohtv.wordpress.com/2013/03/04/mir-an-outpost-envisioned-as-a-new-home/
http://samohtv.wordpress.com/about/

Autor edytował komentarz.
dragonn   11 #11 01.07.2013 13:32

@bastardo dokładnie, wydawało mi się to dziwne że nikt autora tego co przeczytałem na phoronix nie posądził o sianie FUD czy gadanie głupot. Czyli wychodzi na to że jednak miałem rację ;).

przemo_li   11 #12 01.07.2013 14:38

@Kintoki
Tak. :P

Akurat ten jeden przypadek (50%) to bug. Canonical trochę nad tym popracuje.

XWayland i XMir uruchamiają X.orga w trybie root-less. Oba robią to podobnie JEDNAK, Canonical nie ma jeszcze Mira+Unity gotowych na desktopy, więc porównania nie są dokładne. Weston i XWayland działają "na czysto", a to aplikacje działają z X.orgiem. XMir działa "na czysto", ale Unity działa na X.orgu...

Więc na dokładne porównania przyjdzie czas w okolicach października 2014 (kiedy Unity 8 będzie działało "na czysto" na Mirze..)


Poza tym XWayland jest bardziej zaawansowny niż XMir, temu drugiemu brakuje na przykład wyłączania kompozycji dla aplikacji pełno ekranowych (Ale ma już być w Ubu 13.10..)


No i Weston to tylko referencyjny serwer. Każdy może wykorzystać jego kod, ale nikt nie oczekuje żeby distra uczyniły go domyślnym.. Więc w zasadzie takie porównania to ciągle nie Wayland vs Mir..

GregKoval   8 #13 01.07.2013 16:03

Mnie za to zastanawia ten film:

http://www.youtube.com/watch?v=8h0m-ZjPxe8&feature=player_embedded

Po raz pierwszy widziałem KDE pożerające 1GB przy trzech uruchomionych aplikacjach. O 100% zużyciu rdzeni procesora nie wspomnę. Ja wiem można to takie obciążenie uzyskać z jakimiś dodatkowymi procesami w tle, ale po co publikować film z wykresem Htop, skoro nie jest on miarodajny.

Kintoki   6 #14 01.07.2013 16:24

@przemo_li Nie jeden, w przypadku sterowników Nouveau różnice są wyraźniejsze.
http://www.phoronix.com/scan.php?page=article&item=ubuntu_xmir_nouveau&n...

  #15 01.07.2013 17:30

@dragonn Możliwe że masz racje, jeśli tak to przepraszam za nieuzasadnione oskarżenia. Nie ukrywam że wszystkie radykalne informacje nt. wydajności Mira biorę na razie jako plotki, bo informacje od samych autorów są prawie plotkami.

@bastardo Nie rozumiem terminu "dzieci ubuntu" (nie znam języka zulu ale kojarzy mi się to z jakimiś głodującymi dziećmi w afryce), odniosłem się tylko do informacji przekazywanych przez dragonna w odniesieniu do źródła które podałem, nie chciałem od niego wymuszać jedzenia ;>

N4R   3 #16 01.07.2013 23:17

Śmieszny mnie to, że Canonical pokazuje efekty swojej pracy, a więc w kilka miesięcy zrobiony serwer wyświetlania ze wsparciem X, co nawet przyczyniło się do wcześniejszej implementacji w następnym wydaniu. A ludzie co robią? Narzekają i porównują zupełnie nic nie znaczące w tej chwili wykresy w benchmarkach. Dla mnie to jest przejaw zawiści w pełnej krasie. Canonical pokazało kawał dobrej roboty wykonanej na prawdę szybko w porównaniu do tego ile czasu trwają prace na Waylandem i jakie tuzy za nim stoją, a przecież Mira robią osoby, które nie mają pojęcia o serwerach wyświetlania, to zamiast im pogratulować, że faktycznie coś z tego będzie to ludzie tylko hejtuja. Przecież oczywistym jest, że w tej chwili wydajność a szczególnie w benchmarkach ma najmniejsze znaczenie. Pokazali, że projekt żyje i ma się co raz lepiej, na łatki wydajnościowe przyjdzie czas. Czasem mam wrażenie, że społeczność Linuksa jest gorsza niż psychfani Windowsa...

dragonn   11 #17 01.07.2013 23:25

@N4R mówienie że Canonical zrobił od podstaw Mir w ciągu kilku miesięcy jest co najmniej ignorancją. Jak już wykazano wyżej wsparcie dla X jest żywcem skopiowane od Wayland, a sam Mir ma też w sobie dużo kodu w Wayland. Moim zdaniem jedynym powodem dla którego Canonical postanowił zrobić swój serwer wyświetlania to to że po prostu poprawki czy funkcje który Canonical by sobie widział w serwerze wyświetlania były by nie do zaakceptowania dla dev Wayland (chodzi o rzeczy który w ogóle nie powinny się znaleźć w serwerze wyświetlania czy jakieś "brudne rozwiązania"), z Mir Canonical może sobie robić co żywcem im się podoba, nie muszą się trzymać żadnych standardów.

N4R   3 #18 01.07.2013 23:34

Nigdzie nie napisałem, że ich projekt nie czerpie z Waylanda, oceniam postępy pracy i reakcje osób zainteresowanych. A że Canonical tworzy swój odłam podobno bazując na Wayland to nawet mnie nie dziwi, jeśli licencja na to pozwala to w czym problem, w końcu to Linuksy, tutaj tworzy się forki forków.

GregKoval   8 #19 02.07.2013 03:41

@N4R

Według tego co przedstawiono ze strony Canonical to prace nad Mir rozpoczęły się prawie jednocześnie z ogłoszeniem przez Marka S. domniemanego zainteresowania Canonical Waylandem, czyli już kilka lat temu. W tym czasie Waylandem niewiele osób się interesowało. Sytuacja zmieniła się po przejściu autora tego serwera z Red Hat do Intela, gdy prace wreszcie ruszyły z kopyta. Nie można więc porównywać tak jak ty, ze coś jest dłużej robione. Tak naprawdę o potrzebie następcy Xów mówiono jeszcze zanim Wayland powstał, później tę łatkę następcy przyszyto do niego i obciążono za cały okres oczekiwania.

To na co jednak wszyscy zwracają uwagę to fakt, że Wayland jest projektem poza platformowym. Jego wykorzystanie nie będzie więc zależne od podpisywania umów z żadną firmą. Mir może więc mieć lepszy start, ale jeśli Wayland uzyska uznanie innych firm, które wdrożą go w swoje projekty prace nad nim mogą znacznie wyprzedzić to co zaoferuje Canonical. W tej chwili Mir może być szybciej robiony bo jest to praca tylko dla kilku platform nad którymi Canonical ma pełną kontrolę, bardziej bym raczej był ciekaw jak sprawdzi się on poza Unity i to będzie prawdziwą wykładnią jego możliwości.

  #20 02.07.2013 04:38

N4R " Canonical pokazało kawał dobrej roboty
wykonanej na prawdę szybko w porównaniu do tego ile czasu trwają prace na
Waylandem i jakie tuzy za nim stoją, a przecież Mira robią osoby, które nie mają
pojęcia o serwerach wyświetlania"
sam sobie zaprzeczasz mir nie robili od podstaw a zaczerpnol polowe kodu z waylanda wiec juz mieli gotowaca wiec nie wychwalaj canonicala.
ci co robia waylanda tez mieli mala wiedze a do tego to nie firma jak canonical ktora ma jakies dochody i wsparcie. i co najwaniejsze wayland bedzie dzialal na kazdym distro a mir tylko ubuntu i zadne pseldo x czy k bo ma byc zwiazane z unity czyli bez unity na jakims distro nie odpalisz mira.
canonical robi mira pod siebie i tyoko pod ubuntu i zaczyna to zalatywac na zamykanie zrudla wiec powiedz mi z.czym tu wyjezdzasz. ja na szczescie zrezygnowalem z xubuntu w.tym roku i o mir'ze moge pomazc na np slackware bo bedzie to razem z unity a ja tego nie chce.

  #21 02.07.2013 12:06

Jak to jest mozliwe, ze wszystkie srodowiska dzialaja na Mirze bez jakiegokolwiek wsparcia ze strony tych srodowisk nie mowiac juz o braku wsparcia ze strony Qt czy GTK? Przeciez tam nie ma zadnego interfejsu dla Mira. Odpowiedz jest prosta. Za wszystko odpowiada X serwer. Podstawowa roznica miedzy XWaylandem, a XMirem jest taka, ze XWayland odpala sie na Waylandzie i jest to serwer X'ow na Waylandzie. Natomiast XMir startuje na... serwerze X'ow. No mozna jeszcze ladnie dodac w stylu Canonicala, zeby delikatnie namieszac, ze XMir dziala na Mirze, ktory za to dziala na X serwerze. No niestety, przepraszam Was bardzo, ale cudow nie ma.

@GregKoval
"Mnie za to zastanawia ten film:"
Mnie za to ciekawi ilosc procesow. Hmm... ciekawe ile tam tych "compositorow" jeszcze jest.

dragonn   11 #22 02.07.2013 13:06

@Ncik, przeczytaj jeszcze raz wszystkie komentarze.... wiesz dlaczego "wszystkie srodowiska dzialaja na Mirze" a na Wayland nie, może inaczej, po prostu nikt z Wayland nie wpadł na to żeby takie coś testować.... ;p, nie po to się piszę cały nowy serwer wyświetlania żeby całe środowisko odpalać później na warstwie kompatybilności X... bez sensu, to lepiej zostać przy zwykłych X. A jak już wyżej zostałe wyjaśnione, zarówno XMir oraz XWayland działają praktycznie na tej same zasadzie (praktycznie to jest nawet ten sam kod, w obu przypadkach okienko Xorg jest zagnieżdżane wewnątrz Wayland/Mir tak samo jak każde zwykłe okno), oba wykorzystują zmodyfikowanego X.org do działania, tak że nie sieje głupot powtarzanych w kółko.

Autor edytował komentarz.
mazdac   3 #23 10.07.2013 02:26

wayland na raspberry pi naprawdę robi wrażenie. Co do mira, to uważam to za niepotrzebne rozdrobnienie zasobów i pewnego rodzaju butę pod tytułem "my wiemy lepiej" - nie wiem o co chodzi Cannonical, przecież oprócz "stworzenia" będą musieli ponosić dodatkowe koszty utrzymania całego tego bałaganu (swoją drogą na przykładzie Unity widać, że nie bardzo im to wychodzi - są zmuszeni do utrzymywania coraz większej ilości zmodyfikowanych przez siebie pakietów), przy wspólnym projekcie "międzydystrybucyjnym" problemy mogą być rozwiązywane szybciej przez większą liczbę potencjalnych developerów, a stałe API/ABI zachęcić potencjalne firmy do używanie waylanda jako stabilnej (programistycznie) platformy o dużym zasięgu.