Aufmacher Artikel

NeXt Generation

XFree86 4.0 - die neue Version

01.11.2000 Microsoft wirbt für sein Betriebsystem Windows mit einer Funktion, die es erlaubt, zwei Grafikkarten gleichzeitig zu betreiben. Das neue XFree86 4.0 geht einen Schritt weiter und steuert unter Linux gleich eine ganze Monitorwand. In diesem Artikel sagen wir Ihnen, was XFree86 überhaupt ist und was die neue Version 4.0 auch für Anwender bringt, die ein solches Bildschirmmonster nicht ihr Eigen nennen.

SuSE liefert seine neue Distribution SuSE Linux 7.0 standardmäßig mit dem neuen XFree86 4.0 aus – und legt mit SaX2 ein komfortables Einrichtungsprogramm gleich mit bei. Bereits im Vorfeld wurde XFree86 4.0 wegen seiner umfassenden Neuerungen lange heiß erwartet. Wir sagen Ihnen, wie Sie auf die neue Version umsteigen und was sich gegenüber XFree86 3.3.x geändert hat. Zum Einstieg aber zunächst ein wenig Hintergrundwissen.

Am Anfang war der Text

Wenn Sie heutzutage Ihr Linux-System starten, finden Sie sich nach geglückter Anmeldung meistens in einer grafischen Arbeitsumgebung wieder. Dies war jedoch nicht immer so. Linux war ursprünglich kein grafisches Betriebssystem: In seinen Anfängen wurde es fast ausschließlich über Textkommandos gesteuert. Unter anderen Unix-Betriebsystemen gab es bereits das sogenannte X-Window-System, auch kurz X11 genannt, das gemeinsam von DEC und dem "Project Athena" am MIT ins Leben gerufen wurde. Nach einigen Umwegen ist heute "The Open Group" für dessen Weiterentwicklung zuständig.

Unter Linux schlossen sich vor ein paar Jahren einige Programmierer zum "XFree Project" zusammen und entwickelten eine kostenlose Variante des X11-Systems, die den Namen "XFree86" erhielt. Mittlerweile ist aus dem "XFree Project" eine Firma namens "The XFree Project, Inc." entstanden, die sich voll und ganz der Weiterentwicklung dieser freien und somit auch kostenlosen, grafischen Oberfläche widmet.

Klienten und Servierer

Das X-Window-System besteht – anders als Windows – aus zwei Teilen: einem sogenannten "X-Server" und den Anwendungsprogrammen. Der X-Server ist ein Programm, das einzig und allein für die Grafikausgabe zuständig ist. Es bildet gewissermassen das Bindeglied zwischen der Grafikkarte (also der Hardware) und den Anwendungsprogrammen. Wenn ein X-Server von einem Programm die Anweisung bekommt: "zeichne ein Rechteck", dann wandelt er diesen Befehl in einen für die Grafikkarte verständlichen Befehl um und sendet ihn anschließend an diese weiter. Es ist leicht einzusehen, dass ein Programmierer die Grafikkarte genau kennen muss, wenn er einen solchen X-Server schreiben möchte. Leider halten viele Grafikkartenhersteller Informationen über ihre Produkte zurück, so dass die neueste Hardware meistens nur mit größeren Verzögerungen unterstützt werden kann. Ein weiteres Problem lag in der Vergangenheit darin, dass für jede Grafikkarte ein eigener X-Server programmiert werden musste. Die Programmierer von XFree86 haben dieses Problem etwas umgangen, indem Sie die Unterstützung für mehrere Grafikkarten in nur einen einzigen X-Server "gepresst" haben. Das Ergebnis ist der fast schon legendäre "SVGA"-X-Server. Da dieser Server für mehrere Grafikkarten gleichzeitig gerüstet sein muss, wird das fertige Produkt in seinem Umfang relativ groß.

Der X-Server selbst beherrscht nur rudimentäre Zeichenfunktionen. Das Darstellen von Fenstern übernimmt ein spezielles Anwendungsprogramm, der sogenannte "Window-Manager" (dt.: Fenster-Manager). Er bestimmt, wie der Hintergrund, die Rahmen und die Symbole aussehen sollen. KDE und GNOME bilden gleich zwei komplette Fenster-Manager-Pakete, die neben dem eigentlichen Window-Manager, noch weitere Programme wie z. B. einen Dateimanager beinhalten. (Um ganz korrekt zu sein: GNOME selbst enthält keinen eigenen Window-Manager, wird aber meistens zusammen mit einem GNOME-kompatiblen Window-Manager wie Sawfish oder Enlightenment eingesetzt).

Diese Unterscheidung in Server und Anwendungsprogramme (man nennt das System auch "Client and Server") mag auf den ersten Blick unnötig kompliziert aussehen, sie ist aber – insbesondere in einem Netzwerk – viel leistungsfähiger: So können Sie z. B. ein Programm auf einem entfernten, leistungsstarken Computer ablaufen lassen und die grafischen Ausgaben auf einen vollkommen anderen (etwa Ihre Workstation) umlenken.

Die Unterschiede

Bisher bestand der X-Server (also der Teil der grafischen Benutzeroberfläche, der direkt mit der Grafikkarte kommuniziert) unter XFree86 aus einem einzigen, großen Stück. In XFree86 4.0 wurde der X-Server nun modularisiert. In der Praxis bedeutet dies, dass es nur noch einen kleinen X-Server namens "XFree86" gibt, der die Treiber für die entsprechenden Grafikkarten sowie weitere Zusatzfunktionen nachlädt. Dadurch wird er zum einen kleiner und zum anderen (durch die zusätzliche, externe Erweiterungsmöglichkeit) auch leistungsfähiger. Die Modularisierung hat aber noch einen ganz anderen entscheidenden Vorteil: Ein Grafikkartenhersteller kann nun selbst ein Treibermodul für seine Grafikkarten entwickeln und braucht keine Detail-Informationen über die Hardware preiszugeben – es reicht dann vollkommen aus, nur den fertig erstellten Treiber zu verteilen. Zwar kollidiert diese Vorgehensweise mit dem Open-Source-Gedanken, andererseits kann die Entwicklung so schneller und in einer besseren Qualität vorangetrieben werden. (Der Hersteller kennt seine Hardware schließlich am besten.) Vorreiter für dieses System war bisher Nvidia.

Genau wie die Grafikkartentreiber lassen sich auch weitere, zusätzliche Module einbinden. Diese "Extensions" erweitern den X-Server um einige interessante Funktionen wie z. B. die eingangs erwähnte Möglichkeit, per "Xinerama" die Monitore einer kompletten Monitorwand zu einem einzigen großen Bildschirm zusammenschalten zu können. Für Privatanwender interessanter dürfte das "GLX-Modul" sein: Dieses Modul bildet eine Schnittstelle zwischen dem X-Server und der 3D-Grafikbibliothek OpenGL. OpenGL ist unter Linux ungefähr das Gegenstück zu Microsofts Direct3D. Liegt ein für die entsprechende Grafikkarte optimiertes GLX-Modul vor, können X-Window-Programme, die OpenGL verwenden, direkt von den 3D-Hardware-Funktionen der Grafikkarte gebrauch machen und somit im optimalen Fall eine drastische Geschwindigkeitssteigerung erfahren; gerade bei 3D-Spielen wird die so erzielte Zusatzleistung besonders deutlich. Der aktuellen SuSE-Distribution liegen GLX-Module für Nvidia- und 3dfx-Grafikkarten bei. Allerdings möchte ich hier von den Nvidia-Treibern für einen alltäglichen Einsatz abraten: Abstürze des kompletten Systems waren im Testbetrieb nicht selten, zumal die Einrichtung und Konfiguration nicht gerade einfach vonstatten geht. Wer allerdings etwas experimentierfreudig ist, kann einiges an Geschwindigkeit aus seiner TNT- oder GeForce-Karte herauskitzeln. Bei den GLX-Modulen muss weiterhin darauf geachtet werden, dass die entsprechende Version für XFree86 4.0 installiert wird, da es ansonsten zu unschönen Nebenwirkungen kommen kann. Ebenso sollten Sie nicht vergessen, die OpenGL-Bibliothek MESA zu installieren. Wer eine Grafikkarte eines anderen Herstellers sein Eigen nennt, muss wohl oder übel auf den etwas langsameren Softwaretreiber zurückgreifen.

Ebenfalls interessant für viele Anwender dürfte die nun standardmäßige Unterstützung von TrueType-Schriftarten sein. Die in der Vergangenheit zusätzlich benötigten Schriften-Manager dürften somit in der Regel überflüssig werden.

Neben der Möglichkeit des X-Servers, mit dem Monitor per DDC Daten auszutauschen, können jetzt auch mehrere Grafikkarten gleichzeitig angesteuert werden: So wird es dem Benutzer z. B. ermöglicht, auf einem Monitor ein Menü (z. B. von der Bildbearbeitung GIMP) zu plazieren, während ein anderer Monitor in seiner vollen Größe für das zu bearbeitende Bild zur Verfügung steht. Um diese Funktionalität nutzen zu können, müssen Sie aber über Grafikkarten verfügen, die eine oder mehrere weitere Karten neben sich in einem Computersystem dulden. Gerade bei etwas älteren Karten ist dies nicht selbstverständlich.

Nebenwirkungen

So schön diese Neuerungen auch klingen, einen Haken hat die neue Version: So fehlen zum einen noch ein paar in der Vorversion vorhandene Zusatzfunktionen, und zum anderen wird nur ein Teil der Grafikkarten aus der Version 3.3.6 unterstützt. Insbesondere einige ältere Grafikkarten vielen bei der Entwicklung unter den Tisch.

Zu guter letzt soll an dieser Stelle noch vor einem zu sorglosen Einsatz gewarnt werden – XFree86 4.0 ist die erste Version einer Neuentwicklung und damit bei weitem noch nicht so ausgereift und durchgetestet wie die alten Versionen. So sind z. B. bereits einige kleine Sicherheitslöcher aufgetaucht.

Installation

XFree86 in der Version 4.0 wird unter SuSE-Linux nicht standardmäßig installiert. Sie können die Versionsnummer unter KDE im KDE-Menü unter Einstellungen/Information/X-Server einsehen. Steht dort unter Herstellernummer nicht "4000" oder höher, so verwenden Sie noch einen X-Server der 3.3er-Serie. Um XFree86 4.0 einsetzen zu können, müssen Sie zunächst alle Pakete der neuen Version nebst SaX2 installiert haben. Dies sollte unter SuSE-Linux standardmäßig der Fall sein. Eine Installation erfolgt dann komfortabel mit SaX2. Im "komplexen" Modus lässt sich mit diesem Konfigurationsassistenten im einzelnen festlegen, welche Erweiterungen ("Extensions") beim Start geladen werden sollen.

Wer über eine andere Distribution ohne ein an XFree86 4.0 angepasstes Installationsprogramm verfügt, steht einiger Bastelarbeit gegenüber. Die Konfiguration und Installation muss dann komplett per Hand erfolgen, wovon gerade unerfahrenen Anwendern abzuraten ist. Wer es dennoch probieren möchte, findet die entsprechenden Installationshinweise auf den Internet-Seiten des XFree86-Projektes [2].

Kompatibilität zu alten Programmen 

In der Regel sollten mit dem neuen XFree86 4.0 keine Probleme im Alltag auftauchen. Wir haben das System mit verschiedenen Programmen, insbesondere auch den Office-Paketen, eine Zeitlang getestet und konnten keine gravierenden Probleme feststellen. Bis auf die Ausnahme WordPerfect Office 2000 liefen alle Programme einwandfrei, wenn nicht sogar etwas schneller als zuvor (insbesondere PhotoPaint 9 erfuhr einen kleinen Geschwindigkeitsschub). WordPerfect Office 2000 legt nach einem Umstieg auf XFree86 4.0 teilweise ein etwas merkwürdiges Verhalten an den Tag: Das Problem liegt hierbei in erster Linie am FontTastic FontServer, ohne den WordPerfect Office 2000 den Dienst quittiert. Mit ein paar kleineren Handgriffen kann man diese Hürden aber einfach aus dem Weg räumen. Dazu ist eine Modifikation der Datei wpolauncher notwendig, die im Verzeichnis /usr/lib/corel/bin liegt. Bevor Sie diese Datei verändern, eine kleine Warnung: Falls Sie hier etwas falsch machen, kann es passieren, dass Sie WordPerfect Office nicht mehr starten können. Wenn Sie nicht sicher sind, ob Sie diese Änderungen durchführen wollen, sollten Sie lieber bei XFree86 3.3.6 bleiben. Fertigen Sie von der Datei wpolauncher zunächst eine Sicherheitskopie an. Dann öffnen Sie mit einem Texteditor die Ausgangsdatei. Suchen Sie nun den Abschnitt, in dem der FontServer gestartet wird. Dieser Abschnitt beginnt mit dem Kommentar

# Add FontTastic font server to the font path.

Ändern Sie alle drei Zeilen in diesem Abschnitt mit dem Kommando

xset fp+ tcp/$host:7102/all 2>/dev/null

in

xset fp+ tcp/$host:7102 2>/dev/null

um und fügen Sie direkt darunter jeweils die Zeile

xset q | grep 'tcp/.*:7102' >/dev/null

ein. Speichern Sie die veränderte Datei ab. WordPerfect Office sollte nun wieder korrekt arbeiten. Wer sich diese Arbeit nicht machen möchte, findet auf unserer Heft-CD das modifizierte Skript.

Fazit:

XFree86 in der Version 4.0 bringt einige Innovationen und viele interessante Neuerungen mit. Insbesondere der Geschwindigkeitszuwachs ist bei manchen Grafikkarten nicht zu übersehen. Wer aber auf Sicherheit und hohe Stabilität setzt, sollte besser noch bei der alten Version bleiben. Da sich unter SuSE Linux die alte und neue Version nebeneinander installieren lassen, bietet sich aber zumindest dort ein Probebetrieb mehr als an.

Infos

[1] SuSE GmbH; SuSE Linux 7: http://www.suse.de 

[2] XFree86-Projekt: http://www.xfree86.org 

[3] X Window System: http://www.x.org 

[4] The Open Group: http://www.opengroup.org 

[5] Metro Link Inc. (kommerzielle X-Server als Alternative zu XFree86): http://www.metrolink.com 

Tip a friend    Druckansicht beenden Bookmark and Share
Kommentare