Wayland

Izvor: HrOpenWiki
Inačica od 17:00, 30. ožujka 2011. koju je unio/unijela Shrike (razgovor | doprinosi)

Skoči na: orijentacija, traži
                                                                                                                     Wayland-logo.png

Wayland je protokol grafičkog prikaza (display server) za Linux desktop i biblioteka koja implementira taj protokol. Ideja iza waylanda je da bude nasljednik X grafičkog sustava. Wayland omogućuje metodu kojom kompozitni upravljači prozora mogu direktno komunicirati sa aplikacijama, eliminirajući njihovu ovisnost o X, što im omogućuje direktnu komunikaciju sa grafičkim hardverom i ulaznim uređajima. Aplikacije renderiraju grafiku u vlastite međuspremnike, a Wayland server spaja te međuspremnike u konačnu sliku. Ovo je jednostavnije i efikasnije od korištenja kompoziting upravljačkih prozora preko X-a.


Povijest

Kristian Høgsberg, softverski inženjer koji radi na Linuxovom grafičkom sustavu je započeo rad na Waylandu kao hobi projekt u 2008 (u to je doba radio za Red Hat, a trenutno je u Intelu). Njegov raniji rad na X je uključivao AIGLX i sudioništvo u radu na DRI2. Njegovi zacrtani ciljevi su sustav u kojem "svaka sličica savršena, pod čime mislim da će svaka aplikacija biti sposobna kontroliranje renderinga dovoljno dobro da nikada nećemo vidjeti grafičke artefkate i precrtavanja." Wayland je slobodni softver, te je izdan pod GNU Lesser General Public License (LGPL) v2. Od studenog 2010, Wayland radi samo sa Open source driverima za Intel, AMD (prijašnji ATI) i Nvidia (nouveau) grafičke kartice. Nvidia nema namjeru niti planove podržavati Wayland u svojim vlasničkim driverima.

Planirana upotreba i prihvaćanje

MeeGo (2010-09-08) Intel radi na prebacivanju MeeGo na Wayland

Ubuntu (2010-11-04) Mark Shuttleworth je najavio zamijeniti X sa Waylandom kao Ubuntuov primarni grafički server, kao i sa Unity sučeljem.

Fedora (2010-11-09) Adam Jackson (ajax) je izjavio kako će Fedora najvjerojatnije koristiti Wayland po defaultu "...jer je riječ o odličnom izboru za mnoge stvari, a loši aspekti su zanemarivi unatoč strahu od kikiriki galerije."

Izgled Waylanda u trenutnom stanju

Dizajn

Zadnjih godina, Linux grafika se pomaknula iz "brda redering sučelja koaj sva govore x serveru, a koji je u centru svemira" prema stavljanju Linux kernela u sredinu, sa "sustavima poput X i Wayland u kut". Ovo će biti bitno pojednostavljeni grafički sustav koji nudi veću fleksibilnost i bolje performanse. Høgsberg je mogao dodati ekstenziju na X kao što su mnogi drugi projekti učinili, ali je rađe odlučio " gurnuti X van kuršlusa između klijenta i hardvera" iz razloga koje je objasnio u svojem FAQ:

Ono što je sada drugačije jest da se mnogo infrastrukture pomaknulo iz X     ž
servera u kernel (eng. memory management, command scheduling, mode  
setting) ili biblioteke (cairo, pixman, freetype,, fontconfig, pango,...) i mal oje 
toga ostalo što se mora izvršiti u centralnom serveru... [X server ima] izrazito 
mnogo funkcionalnosti koju moraš podržavati kako bi mogao tvrditi da 
"govoriš" X protokol, a ipak, nitko to neće koristiti. ...
Ovo ukljućuje tablice kodova, rasterizaciju glifova i keširanje, XLFDove  
(ozbiljno, XLFD!). Također, čitavi API koji dozvoljava crtanje točkastih linija, 
poligona, dugih lukova i još mnogo najmodernije grafičke tehnologije iz 1980-
ih. Za mnoge stvari smo supjeval idržati X.org server modernim odavanjem 
ekstenzija poput XrandR, XrendR i COMPOSITE... Sa Waylandom možemo 
maknuti X server i svu staru tehnologiju u opcionalnu sekciju. Doći do točke 
gdje je X server samo opcija za kompatibilnost umjesto rendering sustava će 
zahtijevati još dosta vremena, ali nikada se neće dogoditi ako ne planiram osa 
time.   

Wayland se sadrži od protokola (većinom gotovog) i nekog demonstracijskog koda. Trenutno, Wayland koristi OpenGL ES, umjesto tradicionalnog OpenGL-a. "Dugoročno će mo trebati odgovor za aplikacije koje zahtijevaju puni OpenGL, ali je problem u tome što libGL koristi GLX i sve X međuovisnosti." Projekt također razvija verzije za GTK+ i Qt koji renderiraj uza Wayland umjesto X. Većina aplikacija očekuje podršku za wayland kroz jednu od ovih biblioteka bez modifikacija unutar same aplikacije. Wayland trenutno ne podržava mrežnu transparentnost, ali možda hoće u budućnosti.

Kompatibilnost sa X serverom

X11 aplikacije su podržane kroz X server, preko rootlesa, koji se pokreće kao Wayland klijent, iako trenutno podržava Intel X.org drivere. Qt aplikacije mogu mijenjati grafičke sustave poput X i Wayland tijekom izvođenja pomoću -platform CLI opcije. U siječnju 2011, podrška za Wayland je stavljena u Lighthouse granu upstream Qt repozitorija. U prosnicu 2010, GTK+ je dodao preliminarnu podršku kako bi se mogli mijenjati sustavi, citirajući "interesantne kombinacije su X11+wayland ili quartz+X11". U siječnju 2011, GTK Wayland pozadinski sustav je nadograđen da podržava višestruke kako bi podržavao višestruke pozdadinske sustave i pomaknut je u gdk-wayland-backend granu upstream GTK git repozitorija.

Razvoj

Canonical Ltd., vlasnik Ubuntua, je unajmio Sama Spilsburya, glavnog Compiz razvijatelja. On je započeo micati Compiz ovisnosti za X u plugine. Ovo će učiniti lakšim omogućiti Compiz da postane Waylandov "display" server. Canonicial planira pomoći u portanju Compiza na OpenGL ES, što je trenutno osnovna preduvjet za Wayland display server. Kwin, KDE upravljač prozorima, je dodao podršku za OpenGL ES izlaz. Izići će sa KDE SC 4.7