X11 - Einleitung
X11 - Entwicklung

X11 - Technologie

Hat X11 eine Zukunft?

 

UNIX ist tot, X11 ist tot, NFS ist tot – das hat man seit Mitte der 90er zur Genüge gehört. Die „UNIX ist tot“-Rufer sind inzwischen weitgehend verstummt. UNIX ist nach wie vor eine feste Größe in der IT-Welt, nicht zuletzt bestätigt durch den großen Erfolg des UNIX-Klons Linux. Wie steht es aber mit dem X-Window-System, einer der ersten graphischen Oberflächen, das durch seine Netzwerktransparenz schon in den 80er Jahren große Erfolge feierte und mit X-Terminals echte Thin-Client-Technologie etablierte, lange bevor das Schlagwort „Thin Client“ Furore machte?

 

Es ist still um X11 geworden, während lautstark nacheinander die Wellen des Thin-Client-Computing ins Land gerollt und wieder verebbt sind: Java-basierte NCs, Citrix WinFrame bzw. Metaframe, die Terminaldienste von Windows2000, Web-basierte Applikationen und, gerade im Anrollen, .NET. Alle diese Technologien zielen auf die netzwerktransparente Arbeit mit zentralen Applikationsservern, genau das, was X11 bereits seit 15 Jahren leistet. Allerdings gilt für viele heute der X11-Standard als veraltet und schwerfällig. Ein Vorurteil? Ein Blick auf die Entwicklung des altgedienten Protokolls verhilft hier zu einem objektiveren Urteil.

 

Die Entwicklung des X-Window-Systems

Die Geschichte des X-Window-Systems reicht bis in das Jahr 1984 zurück. Der Name „X“ bezeichnete eine performantere Weiterentwicklung eines älteren Window-Systems namens „W“. X war einfach der nächste Buchstabe im Alphabet. An der Bostoner Elitehochschule MIT wurde in den folgenden Jahren ein neues graphisches Anzeigesystem entwickelt, das von vorne herein netzwerktransparent ausgelegt war, d.h. die eigentliche Applikation kann durch das Netzwerk getrennt von der Anzeige, dem X-Server, laufen. Die Netzwerk-Kommunikation zwischen Applikation und X-Server erledigt das X-Protokoll. Die Quellen dieses Systems waren immer offen und frei verfügbar, also „Open Source“, wie man heute sagen würde. Nicht zuletzt diese Tatsache verhalf dem X-Window-System zu einer breiten Akzeptanz bei den meisten UNIX-Herstellern, die – im  sog. X-Konsortium zusammengeschlossen – die Weiterentwicklung des Systems vorantrieben. 1989 entwickelte zudem die kanadische Firma Hummingbird unter dem Namen Exceed einen X-Server für DOS-Rechner und brach so eine Lanze für X als wirklich plattformübergreifendes System. Hummingbird sollte von da an eine entscheidende Rolle sowohl bei der Verbreitung als auch der Weiterentwicklung von X spielen.

 

Das X-Window-System durchlief in seiner frühen Entwicklung 11 Versionen, bis es 1987 universell  einsetzbar war. Seitdem spricht man einfach von X11, und die Weiterentwicklung geschieht in Form von Releases – aktuell X11R6.6 – die z.T. erhebliche Erweiterungen des Systems enthalten. Der X11-Standard sieht dafür ein System von Extensions vor und ist dadurch offen für Innovationen. Dennoch kam es nach der Veröffentlichung des Release 6.3 im Dezember 1996 scheinbar zum Stillstand. Die Neuerungen dieses Releases, darunter der Versuch, X11 in das aufblühende Web zu integrieren, fanden keine Akzeptanz unter den führenden UNIX-Herstellern, das kriselnde X-Konsortium löste sich auf, während die IT-Welt gebannt auf Java-basierte Technologien blickte. Es sollten zwei Jahre vergehen, bis die Open Group, die 1996 die Betreuung von X11 übernommen hatte,  ein neues Release – X11R6.4 – herausbrachte.

 

Verbreitung von X11-Implementierungen durch freie Programmierer

Wirkliche Innovation kam von ganz anderer Seite: Seit 1992 versorgt eine ständig wachsende Gruppe freier Programmierer unter dem Projektnamen „Xfree86“ Intel-basierte UNIX-Varianten, allen voran Linux, mit Implementierungen des X11-Standards. 1994 folgte die Gründung einer Gesellschaft und der Beitritt in das X-Konsortium, um dort aktiv an der Entwicklung des Standards mitzuwirken. Im Gegensatz zu den etablierten UNIX-Herstellern unterstützte Xfree86 bereits Anfang 1997 den Release-Stand 6.3 und – noch bedeutender – ist seither durch Entwicklung eigener Extensions der Innovator im X11-Umfeld. Parallel brachte die rasante Verbreitung von Linux einen ebenso rasanten Aufschwung von X11-basierten Desktop-Entwicklungen, allem voran die bekannten Systeme KDE und gnome.

 

Diese Entwicklung war nicht ohne Gefahren. Die eigenen Wege der Xfree-Gruppe drohten den X11-Standard zu zersplittern, was das Ende der Plattformunabhänigkeit bedeutet hätte. Wiederum engagierte sich der Softwarehersteller Hummingbird, dessen X-Server Exceed zum De-facto-Standard auf Microsoft-Plattformen geworden war. Im Jahr 2000 galang mit der neu formierten X.org, deren Vorsitz der Hummingbird-Vertreter in dieser entscheidenen Periode innehatte, eine deutliche Wiederbelebung sowie die Reintegration der Xfree86-Gruppe. Seither ist X.org tatkräftig bemüht, Innovationen aus dem Xfree-Lager und inzwischen auch wieder Beiträge der kommerziellen X.org-Mitglieder, etwa den Internationalisierungs-Code von Sun Microsystems, in den offiziellen Standard aufzunehmen.

 

Extensions ermöglichen den Einzug von X11 in neue Anwendungsbereiche

Wie sehen nun diese Neuerungen in Form von X-Extensions aus und was bringen Sie dem Anwender? Ein einfaches Beispiel ist die XInput-Extension. Obwohl das X-Protokoll ursprünglich nur von Arbeitsplätzen mit Maus und Tastatur ausging, erlaubt diese Extension die Integration neuer Eingabegeräte, wie Digitizer, Zeichentabletts u.ä. Die XGL-Extension hingegen bildet eine Brücke zu OpenGL, einem eigenen, breit unterstützten Standard für performante Techniken der 3D-Darstellung. Da OpenGL ständig weiterentwickelt wird, profitiert automatisch X11 von Neuerungen auf diesem Gebiet. Moderne Arbeitsplätze sind oft mit mehreren Monitoren ausgestattet. Um diese zu einem Riesen-X-Display zusammenzufassen, schuf die Xfree-Gruppe eine Extension namens Xinerama, die nun Teil des aktuellen X11-Standards ist. Weitere Extensions aus dem Xfree86-Lager betreffen beschleunigte Videodarstellung und moderne Render-Methoden. Eine weitere Neuerung steht bereits auf der Roadmap für die nächste Ausgabe von Xfree86: die RandR-Extension. RandR steht für „Resize and Rotate“. Mit ihrer Hilfe wird es möglich, ohne Neustart des X-Server die Auflösung eines Displays zu ändern oder das Display umzudrehen – man kennt diese Möglichkeit von einigen TFT-Displays. Darüber hinaus lassen sich mit dieser Extension mehrere und wechselnde Farbmodelle, sog. Server-Visuals, in einem Display realisieren. Diesmal haben offenbar Ingenieure des X.org-Mitglieds HP einen wesentlichen Beitrag geleistet.

 

Schon alleine die RENDER-Extension ist ein deutlicher Beweis für die Innovationsfähigkeit von X11. Mit ihrer Hilfe können X-Applikationen von Fähigkeiten digitaler Bildkonstruktion, wie sie moderne Graphikkarten bieten, profitieren. So geschehen in den letzten Versionen von KDE und gnome, insbesondere zur Darstellung kantengeglätteter Schriften. Zwar ist die RENDER-Extension noch nicht im letzten offiziellen Release des X11-Standards enthalten, doch X.org beschäftigt bereits eine Arbeitsgruppe mit dem Thema.

 

Auch Windows-Nutzer profitieren von den Neuerungen bei X11

Wie steht es aber mit der Verfügbarkeit dieser Neuerungen über das UNIX-Umfeld hinaus? Hummingbird hat in diesem Herbst die Version 8.0 von Exceed, ihres X-Servers für alle gängigen Microsoft Windows-Varianten, herausgebracht. Kann damit auch der Windows-Nutzer von den Neuerungen im X11-Bereich profitieren? Dies kann nur bejaht werden. Exceed ist in der Lage, mehrere Monitore gezielt anzusteuern oder in beliebigen Gruppen zu großen X-Displays zusammenzufassen. Ständig wird die Liste der unterstützten Eingabegeräte erweitert: Neben den erwähnten Zeichentabletts sind dies Wheel-Mäuse und – ganz aktuell –  die „dreidimensionale“ Maus LogiCad3D. Mit der Version 8.0 ist Hummingbird noch einen engagierten Schritt weiter gegangen: Neben den „offiziellen“ Extensions der X11-Standards beherrscht Exceed 8.0 als einziges derartiges Produkt für die Windows-Plattform auch die RENDER-Extension der Xfree86-Gruppe. Damit können KDE- und gnome-Benutzer auch am Windows-Desktop mit allen Graphik-Features arbeiten. Für gnome, das ja von Sun und HP als der UNIX-Desktop der Zukunft platziert und bereits mit Solaris 9 ausgeliefert wird, hat die neue Exceed-Version noch ein weiteres Feature durch die Unterstütztung der gnome-spezifischen Window-Manager-Extensions. So lassen sich die virtuellen Arbeitsbereiche von gnome parallel zum Windows-Desktop nutzen.

 

Insgesamt entsprechen die aktuellen Entwicklungen im X11-Bereich keineswegs dem Bild eines sterbenden Protokolls. Ganz im Gegenteil sorgen gerade die regen Aktivitäten im Linux-Umfeld für die Etablierung moderner GUI-Technologien und erfreulicherweise auch dafür, dass inzwischen die großen kommerziellen UNIX-Vertreter die Weiterentwickelung von X11 wieder ernst nehmen.

 

X11 - Einleitung
 Dieser Artikel wurde 2002 von Andreas Gottwald verfasst und erschien in leicht veränderter Form in UNIX Open 11/2002.
X11 - Technologie