In principio fu XFree86, nel lontano 1992. Poi, in tempi più recenti (2004) è arrivato X.Org, con lo scopo di sostituire il suo predecessore nell'implementazione del server grafico X, sempre rigorosamente in chiave open source. In questi anni il mondo informatico ha subito una notevole evoluzione, con cambiamenti e miglioramenti a ritmi esponenziali, che hanno permesso di implementare nuove tecnologie e di andare al di là di quelli che erano in precedenza i limiti nella gestione degli aspetti grafici di un sistema operativo.
Se all'inizio X.Org era considerata una delle soluzioni più innovative nel campo del software libero, altrettanto non si può dire al giorno d'oggi: per quanto gli sviluppatori abbiano provato a stare al passo coi tempi, la struttura intrinseca del server grafico rappresenta un grosso limite alla sua evoluzione. Senza nulla togliere all'ottimo prodotto realizzato dagli sviluppatori, che rappresenta tuttora uno standard nel mondo GNU/Linux, e rimarrà tale per molti anni ancora, ciò che manca, è quella flessibilità che in molti desiderano per poter maneggiare più semplicemente e in maniera più efficiente X.Org. Come spesso accade nel mondo open source, da una semplice necessità nasce in breve tempo un'idea originale, che si trasforma poi in realtà: questo è il caso di Wayland.
Wayland è un display grafico di concezione più moderna, organizzato sulla base di alcune delle tecnologie più importanti di X.Org, quali ad esempio il Kernel Mode-Setting ed il Graphic Execution Manager. Il suo creatore è Kristian Høgsberg, ingegnere di Red Hat e volto già noto negli ambienti del progetto Free Desktop. Alla base dell'intero progetto v'è una riorganizzazione di quelli che sono i compiti che spettano ad ogni componente dell'intera infrastruttura, con il server grafico che si sgancia da alcuni ruoli cui finora è stato vincolato, per lasciare spazio ad altre applicazioni che possono svolgere opportunamente tali funzioni.
Se si dovesse cercare una parola chiave in Wayland, questa è certamente compositor. Il compositor rappresenta uno degli organi più importanti nell'economia di un server grafico, occupandosi direttamente del rendering delle immagini sullo schermo del computer. Nell'organizzazione attuale di X.Org, il server grafico si trova in una posizione intermedia tra le periferiche di input, il Kernel ed il compositor: il suo ruolo è dunque quello di ricevere le richieste dall'esterno, ed organizzare il flusso di dati e operazioni da eseguire per far sì che tali richieste vengano evase nel miglior modo possibile. Il compositor è dunque delegato dal server grafico di agire in maniera opportuna affinché vengano renderizzato quanto c'è da mostrare all'utente al di là dello schermo.
La concezione di Wayland è invece sostanzialmente diversa, e trasforma il server grafico da un semplice livello intermedio ad un vero e proprio compositor. La comunicazione avviene direttamente con il compositor, che dunque gioca un ruolo più centrale nell'intera struttura. L'origine di tutto è sempre il Kernel, che si occupa di interfacciarsi con il mondo esterno, e comunica quanto necessario al compositor tramite evdev, allo stesso modo di quanto accade in X.Org. Le operazioni di rendering avvengono all'interno dei client, che poi comunicano al compositor le operazioni eseguite. La tecnica utilizzata è ereditata da X, e prende il nome di direct rendering: una volta renderizzato quanto richiesto, il client invia il risultato in un buffer condiviso con il compositor, il quale viene allertato della presenza di nuovi dati, ed agisce di conseguenza, andando a comporre le immagini sullo schermo.
In prima battuta, potrebbe sembrare logico dover riorganizzare l'intero mondo del software open source per poter far fronte ad un eventuale passaggio a Wayland. In realtà, ciò risulta falso, grazie alla possibilità di far girare un'istanza di X come client di Wayland: ciò comporta la possibilità di eseguire applicazione nate per X all'interno del nuovo server grafico, al più con la necessità di una ricompilazione dei sorgenti, ma non con l'obbligo di doverli modificare. Anche in tal caso, al centro di tutto v'è sempre il compositor, che dialogherà ora con due tipi diversi di client: uno nativo, ed uno che in un certo senso può essere considerato come il frutto dell'importazione di X in Wayland. Interessante inoltre la possibilità di utilizzare gli stessi driver usati finora, sfruttando allo stesso modo l'accelerazione 2D.
Nonostante l'idea sia nata ormai due anni or sono, lo sviluppo di Wayland è ancora in alto mare: l'intero sistema risulta ancora piuttosto instabile, con la necessità di importanti lavori di miglioramento sotto diversi punti di vista. Il progetto può essere considerato come un calderone di idee in divenire, con una buona base di partenza sulla quale gli sviluppatori dovranno concentrare i propri sforzi per far sì che dalle parole si possa passare ai fatti, con lo sbarco di Wayland nelle principali distribuzioni GNU/Linux.
L'idea di Høgsberg sembra promettere bene, al punto che sono stati in molti a definirlo come il display server del futuro. A scoccare una freccia in favore di Wayland sono stati anche importanti nomi del panorama open source, con Mark Shuttleworth, fondatore di Canonical, ha ufficializzato sul proprio blog l'intenzione di integrare Wayland in Ubuntu. Tale operazione non sarà certamente effettuata in tempi brevi, sia per la già citata necessità di importanti passi in avanti da parte del server grafico, sia perché un passaggio brusco da X.Org a Wayland risulta difficilmente ipotizzabile, in quanto potrebbe avere conseguenze disastrose per l'economia della distribuzione. Shuttleworth, tuttavia, ha definito il server grafico di Høgsberg come quello ideale a fornire l'user experience che hanno in mente gli sviluppatori Canonical per Ubuntu, e che X.Org non è in grado di offrire.
L'idea è quella di passare dall'attuale binomio GNOME-X a quello Wayland-Unity, con quest'ultima che rappresenta una delle ultime soluzioni in termini di interfaccia grafica per ambienti Linux. Ciò significa che Wayland potrà avere dalla propria parte un forte alleato, che negli ultimi anni è riuscito a imporsi nel mondo Linux, e che potrà contribuire al futuro del display server. A strizzare l'occhio al progetto vi sono stati anche altri nomi di un certo calibro: si va dagli sviluppatori Fedora, anch'essi intenzionati a portare in un futuro non troppo lontano Wayland all'interno della distribuzione, alla coppia Intel-Nokia, soprattutto in chiave MeeGo, che potrebbe giovare sensibilmente in termini di prestazioni, flessibilità ed efficienza.
Ma non è tutto oro ciò che luccica, e così come c'è chi si è subito detto pronto ad appoggiare il nuovo server grafico, c'è chi ha invece chiuso le porte per ogni possibile dialogo. A frenare gli entusiasmi è stata NVIDIA, che ha dichiarato di non voler offrire il proprio supporto allo sviluppo di driver per Wayland. Resta da vedere quale sarà la posizione di ATi, l'altro maggiore produttore di schede video al mondo: se anche l'azienda controllata da AMD dovesse rispondere picche, l'intero progetto potrebbe risentirne profondamente, venendo meno l'appoggio del fattore driver, indispensabile per la gestione delle schede video e di conseguenza dell'intero processo di gestione dei display.