11. X W I N D O W S Y S T E M Die folgenden Punkte sind der Inhalt dieses Kapitels. 11.1 Allgemeines |
11.1 Allgemeines | |
Das X Window System (kurz X) stellt eigentlich eine Sammlung von Basisfunktionen und Protokollen dar, mit deren Hilfe grafische Informationen auf dem Bildschirm ausgegeben und Maus und Tastatur verwaltet werden. Für UNIX und Linux ist das X Window System der Standard für grafische Oberflächen. Die folgende Abbildung zeigt den Aufbau und das Zusammenspiel des X Window Systems mit anderen involvierten Komponenten. Abbildung 11.1.: X Window System, Schichten und Komponenten [20] Die einzelnen Komponenten sind wie folgt zu verstehen:
Das X Window System wurde ursprünglich vom Massachusetts Institute of Technology (MIT) entwickelt und besteht gerade in der Version 11 Release 6 (kurz X11R6 oder X11). |
11.2 XFree86: Konfiguration, Display-Manager | |
XFree86 ist eine freie Implementierung des standardisierten XWindow Systems, wird für alle Linux- Distributionen verwendet und steht auch für zahlreiche UNIX-Varianten zur Verfügung. Es ist das Produkt des XFree86 Project, Inc.. XFree86 stand ursprünglich nur für Betriebssysteme mit Intel- Prozessoren zur Verfügung (386, 486, etc., daher die Zahl 86 im Namen), mittlerweile läuft es aber auf sehr vielen Prozessoren. Neben XFree86 gibt es weitere freie Implementierungen wie X.org und kommerzielle Implementierungen wie Accelerated-X. Die kommerziellen Implementierungen hatten früher eine relativ große Bedeutung, weil XFree86 damals viele moderne Grafikkarten noch nicht unterstützte. Dies hat sich aber gewandelt mit der zunehmenden Leistungsfähigkeit von XFree86. Ganz neue Grafikkarten, die von XFree86 noch nicht unterstützt werden, sind oft auch den kommerziellen Servern unbekannt. XFree86 Version 3.n und Version 4.nAktuelle Distributionen enthalten die Version 4.n (zum Beispiel SuSE 9.1 Professional: 4.3.99.902) von XFree86. ältere Distributionen enthielten zusätzlich die Version 3.n. Die wichtigsten Vorteile der neueren Version sind:
X -showconfigFalls sowohl die Version 3.n als auch 4.n installiert ist, bestimmt die Datei /usr/X11R6/bin/X, welche tatsächlich verwendet wird. üblicherweise handelt sich bei X um einen symbolischen Link, der auf den tatsächlichen Server zeigt. Bei der Version 4.n hat der Server den Namen XFree86. XFree86-DokumentationZu XFree86 existiert eine Menge Online-Dokumentation. Sehr ausführlich sind die Man Pages. Unter anderen existieren Seiten zu:
Starten und Beenden des X-Serverüblicherweise ist Linux so konfiguriert, dass X beim Systemstart automatisch ausgeführt wird. Für diesen automatischen X-Start ist der Init-V-Runlevel 5 verantwortlich. Wenn der X-Server nicht automatisch gestartet wurde, können Sie ihn manuell über die Kommandozeile mit folgendem Befehl starten:startxBei erfolgreichem Start sind Sie dann unter X als der Benutzer angemeldet, mit dem Sie den Befehl ausgeführt haben. Der sicherste Weg den X-Server zu stoppen ist der Wechsel in den Runlevel 3 durch Eingabe des folgenden Befehls auf der Kommandozeile: init 3 11.2.1. KonfigurationDie Konfiguration des X-Servers erfolgt normalerweise bei der Installation von Linux. In der Regel läuft X danach zufriedenstellend. Sollten sich jedoch einzelne Komponenten Ihres Rechnersystems nach der Installation ändern (zum Beispiel der Monitor oder die Grafikkarte, müssen Sie eventuell den X-Server entsprechend neu konfigurieren mit Hilfe der Konfigurationsdatei XF86Config (wie bereits im vorangegangenen Abschnitt erwähnt). Die Konfiguration von XFree86 erfolgt üblicherweise mit der Datei /etc/X11/XFreeConfig. Die Konfigurationsdatei darf sich jedoch an verschiedenen Orten befinden und unterschiedliche Namen haben. Eine vollständige Liste aller Verzeichnisse erhalten Sie auf der entsprechenden Man Page (man XF86Config-4 ).
KonfigurationshilfenNeben der gängisten Methode zur Konfiguration unter Linux, das Editieren der Konfigurationsdatei mit einem Text-Editor (vgl. Editor vi), werden je nach Distribution zusätzliche Werkzeuge zum Konfigurieren bereitgestellt, die bei der Konfiguration mehr oder weniger Hilfestellung geben:
Struktur der XF86ConfigDie Konfigurationsdatei in mehrere Abschnitte gegliedert, die mit Section "name" beginnen und EndSection abgeschlossen werden. Die wichtigsten Abschnitte sind wie folgt:
Abbildung 11.2.: Beispiel XF86Config Für Anfänger empfiehlt es sich eines der oben genannten Werkzeuge, soweit verfügbar, zur Konfiguration zu verwenden oder bei speziellen Problemen nach HOWTOs im Internet zu schauen. 11.2.2. Display-ManagerWie bereits am Anfang dieses Abschnitts erwähnt, wird X bei fehlerfreier Funktion im Rahmen des Init-V-Prozesses im Runlevel 5 gestartet. Dabei wird X durch einen Display-Manager gestartet. Eine weitere Aufgabe des Display-Manager ist das Benutzer-Login. Sichtbar wird dies für den Benutzer nach Abschluss des Init-V-Prozesses, wenn eine grafische Login-Box erscheint. Mit dieser muss sich der Benutzer mit seinem Benutzernamen und seinem Passwort authentifizieren. Ist der Login erfolgreich, wird der entsprechende Window Manager oder das entsprechende Desktop-System gestartet (später mehr dazu). Dieser Benutzer-Login kann als grafischer Ersatz für die Login-Eingabeaufforderung, wie man sie von der Kommandozeile kennt, gesehen werden. Darüber hinaus ist der Display-Manager in der Lage entfernte X-Server zu verwalten, kann also auch Benutzer-Logins auf entfernten X-Servern bereitstellen. Unter Linux gibt nicht nur einen Display-Manager, sondern eine ganze Reihe:
|
11.3 X.Org | |
X.Org ist ein alternativer X-Server. Er basiert auf dem Quellcode von XFree86 Version 4.3.99. Dies war die letzte XFree86 Version, der von den Programmieren noch nicht die Bedingung auferlegt wurde, dass Software für das X Window System von nun an eine Art Danksagung an die Programmierer von XFree86 enthalten musste. Nach Ansicht der X.Org Foundation [18] läuft dieses Gebahren dem Gedanken von OpenSource-Software zuwider. Aufgrund der Code-Verwandtschaft lassen sich Konfigurationsdateien sowie Anwendungen (Windowmanager, Desktopsysteme, etc.) weitgehend ohne Anpassung aus einer XFree86-Umgebung übernehmen. |
11.4 Window Manager | |
Wie bereits am Anfang dieses Kapitels erwähnt wurde, stellen Window Manager eine grundlegende grafische Oberfläche dar. Sie betten X Applikationen in ihre entsprechenden Fenster ein, um diese dann für den Benutzer bedienbar zu machen (zum Beispiel das Verschieben oder das Schließen eines Fensters). Zusätzlich bieten sie meist ein kompaktes Menü, um X Applikationen direkt und nicht von der Kommandozeile starten zu können. Generell gilt für alle Window Manager, dass sie sehr kompakt und leistungsstark sind, da sie auf die "wesentlichen Dinge" reduziert sind. Auf der anderen Seite sind sie für Anfänger sehr ungewohnt, da ihre Bedienungsweise keine ähnlichkeit zu grafischen Benutzerschnittstellen anderer Betriebssysteme hat (vgl. Microsoft Windows, MacOS, etc.). Beispielhaft soll hier der Window Maker gezeigt werden, der bei der Standardinstallation der meisten Distributionen installiert wird (siehe Abbildung 11.3). Abbildung 11.3.: Window Maker Die Konfigurationsprogramme für den Window Maker und die gerade ausgeführten X Applikationen werden durch "Kacheln" am Rand der Oberfläche repräsentiert. Oben rechts in der Abbildung sehen wir das quaderförmige Menü des Window Maker, welches mit einen Klick auf die rechte Maustaste ausgewählt werden kann. Eine gute übersicht aktuell verfügbarer Window Manager finden Sie unter http://xwinman.org/. |
11.5 Desktop-Systeme: KDE, Gnome | |
Desktop-Systeme gehen über die Funktion eines Window Managers noch weit hinaus. Aufgrund von grafischen Bibliotheken sehen viele Anwendungsprogramme einheitlich aus und sind auch einheitlich zu bedienen. Die Kommunikation zwischen den Programmen ist standardisiert, dass beispielsweise Drag-und-Drop-Kommandos zwischen unterschiedlichen Programmen möglich sind etc. Im Folgenden sind einige Merkmale aufgezeigt:
11.5.1. KDE (The K Desktop Environment)KDE ist ein zeitgemäßes Desktop-System mit Netzwerktransparenz für UNIX und Linux. KDE versucht dem Bedarf eines einfach zu bediendenden Desktops für UNIX und Linux nachzukommen, ähnlich den Desktops wie man sie bei Microsoft Windows oder MacOS findet. Das KDE Project wurde im Oktober 1996 gegründet und steht unter der LGPL / GPL Lizenz. Die folgende Abbildung zeigt beispielhaft KDE 3.1, wie es bei SuSE Linux 9.0 Professional mitgeliefert wird, beispielhaft deswegen, weil KDE eine Vielzahl von Anpassungsmöglichkeiten bietet, so dass es kein Standarderscheinungsbild für KDE gibt.Abbildung 11.4.: KDE 3.1 Grundsätze für KDEIn KDE wird standardmäßig alles, außer in Ausnahmefällen, mit einem einfachen Mausklick gestartet (kann aber auch entsprechend mit dem KDE-Kontrollzentrum umkonfiguriert werden).
Der Desktop im überblickAn dieser Stelle soll Ihnen ein überblick über die wesentlichen Elemente des KDE Desktop gegeben werden (vgl. Abbildung 11.4):
Wichtige KDE WerkzeugeAn dieser Stelle sollen noch einige wichtige KDE-Programme genannt werden, die bis jetzt noch keine Erwähnung gefunden haben.
11.5.2. GnomeDas Gnome Project (GNU Network Object Model Environment) soll einen intuitiven und ansprechenden Desktop für den Benutzer bieten. Gnome ist Teil des GNU Project. Der Hauptunterschied zwischen KDE und Gnome, wovon stets auch der Konflikt, welches nun das bessere Desktop-System ist, ausgeht, sind die Bibliotheken, auf den diese beiden Desktop-Systeme basieren. KDE basiert auf Qt, einer kommerziellen Bibliothek der Firma Trolltech. Diese darf zwar für freie Softwareprojekte kostenlos genutzt und weitergegeben werden. Es galten jedoch für die Version 1.n eine Menge Einschränkungen, die sich aber gelockert haben aufgrund der neuen QPL (Q Public Licence). Diese ist zwar nicht so "frei" wie die LGPL, aber doch frei genug, um von der Open-Source-Entwicklungsgemeinde akzeptiert zu werden.Gnome basiert dagegen auf dem GTK (Gimp Tool Kit), also einer Bibliothek, die urspünglich nur für die Benutzeroberfläche von Gimp entwickelt wurde ( Gimp ist ein Bildverarbeitungsprogramm). Die Gtk ist wirklich freie Software und untersteht der LGPL. Die folgende Abbildung zeigt beispielhaft Gnome 2, wie es bei SuSE Linux 9.0 Professional mitgeliefert wird, beispielhaft deswegen, weil auch Gnome eine Vielzahl von Anpassungsmöglichkeiten bietet, so dass es kein Standarderscheinungsbild für Gnome gibt. Abbildung 11.5.: Gnome 2 Auf den ersten Blick erkennt man die ähnlichkeit zwischen KDE und Gnome. Eine Zusammenführung dieser beiden Desktop-Systeme wäre eine sinnvolle Lösung nach änderung der rechtlichen Lage, jedoch kam diese viel zu spät. Gnome bietet eine nicht so breite Palette an eigenen Programmen wie man es bei KDE gewohnt ist. Auf anderen Seite muss man aber auch beachten, dass viele KDE-Programme Gegenstücke (mit erweiterter Funktionalität) zu bereits vorhandenen Open Source Programmen sind. Grundsätze für Gnome
|