AA_gitter.jpg

© Stasys Eidiejus; 123RF

Neue Wege

Das Grafiksystem Wayland

Die Nachricht schlug in den Diskussionsforen ein wie eine Bombe: Mark Shuttleworth möchte in Ubuntu langfristig den grafischen X11-Unterbau durch Wayland ersetzen. Der Eingriff beschert nicht nur Programmentwicklern mehr Arbeit, sondern hat auch Folgen für die Anwender.

Unter der bunten Benutzeroberfläche eines Ubuntu-Systems werkelt von jeher das X-Window-System – kurz X11. Die aktuelle Version X11R7.5 pinselt die Fensterinhalte auf den Bildschirm, bewegt den Mauszeiger und leitet Tastatureingaben an eine gerade aktive Anwendung weiter. Dem System vertrauen auch Linux-Desktops wie Gnome und KDE (Abbildung 1).

Abbildung 1

Abbildung 1: Die grafische Benutzeroberfläche eines Linux-Systems besteht aus mehreren Einzelteilen oder Schichten, die aufeinander aufbauen.

Gute alte Zeit?

Die Wurzeln des X-Window-System reichen bis in das Jahr 1984 zurück. Damals waren Schwarz-Weiß-Monitore Standard, Farbmonitore mit heutiger Auflösungen für Privatanwender unbezahlbar oder schlicht nicht existent. Aus dieser Zeit schleppt X11 ein paar Altlasten mit. So bedurfte es beispielsweise einiger Verrenkungen, ihm schnelle 3-D-Grafik und die heute üblichen Desktopeffekte aufzupfropfen. Dennoch haben das System und sein grundlegendes Arbeitsprinzip mehr als 25 Jahre überlebt. In diesem Zeitraum gab es bereits einige Versuche, X11 durch moderne Alternativen zu ersetzen, darunter Y [1] und Fresco [2], um nur zwei bekanntere zu nennen. Kristian Høgsberg ignorierte diese Sackgassen und nahm 2008 einen eigenen Ersatz namens Wayland [3] in Angriff. Høgsberg störte vor allem der gewachsene, komplexe Aufbau des X-Window-System und seine umständliche Arbeitsweise. Wayland befindet sich zur Zeit aber noch am Anfang der Entwicklung. In groben Zügen lässt sich zwar sagen, wohin die Reise geht, an den Details feilen die Entwickler aber noch.

Doppelt gemoppelt

Der Begriff Wayland bezeichnet gleich mehrere unterschiedliche Dinge. Welche Befehle wie und wann zwischen einem Wayland-Client und dem Wayland-Compositor erlaubt sind, regelt ein Protokoll. Genau dieses trägt den Namen Wayland. Die Wayland-Clients kommunizieren nicht direkt mit dem Compositor, sondern nutzen dazu eine passende Bibliothek, die ebenfalls Wayland heißt. Nicht zuletzt bezeichnen viele Webseiten den Compositor fälschlicherweise als Wayland.

Hochhausbau

Die Kernkomponente des modular aufgebauten X11 bildet der sogenannte X-Server. Er malt die Fenster letztendlich auf den Schirm und kommuniziert in der Regel mit dem Linux-Kernel. Der X-Server kümmert sich allerdings nicht darum, wie die Fenster und ihre Rahmen aussehen. Diese Aufgabe übernehmen sogenannte Fenstermanager (engl. "Window Manager"), die meist Teil einer komfortabel zu bedienenden Desktopumgebung sind. Der wenig bekannte Fenstermanager von Gnome hört etwa auf den Namen Metacity.

Unterstützung erhält der X-Server durch den so genannten Compositor. Er merkt sich, wo sich welche Fenster auf dem Schirm befinden und verpasst ihnen bei Bedarf einen netten Grafikeffekt – beispielsweise lässt er sie beim Verschieben vibrieren. Bei einigen Desktop-Umgebungen übernimmt der Compositor sogar die Aufgaben des Fenstermanagers. Ubuntu ergänzt X11 beispielsweise um Compiz, das dann seinerseits Gnomes Metacity ersetzt.

Abbildung 2

Abbildung 2: Unter X11 meldet der Kernel dem X-Server (1) einen Tastendruck. Der muss nun beim Compositor das passende Fenster abfragen (2), (3), bevor er die Nachricht an den verantwortlichen X-Client weiterleiten kann (4).

Einem Freund empfehlen