X11

Aus Tuxfutter

(Weitergeleitet von X-Server)
Wechseln zu: Navigation, Suche

X11 (auch X-Windows genannt) ist die grafische Oberfläche (GUI) von UNIX und Linux.

Im Gegensatz zur GUI von Windows bietet X11 enorme Vorteile und dies bereits seit den ersten Implementierungen Anfang der 80er Jahre des letzten Jahrhunderts (also, als Windows noch ein Aufsatz auf MS-DOS war):

  • Client-Server-System und somit
  • Netzwerkfähig

X11 ist dafür zuständig, dass der Mauszeiger angezeigt und Mausklicks ausgewertet werden und dass etwas auf den Bildschirm gezeichnet wird. Dieses etwas kann ein Fenster, ein Knopf, ein Rollbalken, etc. sein. Allgemein werden diese Elemente "Widgets" genannt.

Weiterhin bringt X11 auch erst Treiber für die Grafikkarte(n) mit.

Im Gegensatz zu Windows ist das X11 System kein Bestandteil des Betriebssystems, und somit auch nicht Teil des Kernels. Es ist - streng genommen - ein einfaches Anwenderprogramm, wie jedes andere auch. Jedoch hat der sog. X-Server ein grosses Privileg:

Der X-Server darf als einziges Programm, direkt auf die Hardware zugreifen, d.h. am Kernel vorbei. Jedoch ist dieses Privileg auf die Grafikkarte beschränkt. Dieses Privileg ist logisch, da der Weg zwischen Applikation und der Grafikkarte möglichst kurz sein soll und Kernelaufrufe, die dann an die Grafikkarte weitergeleitet würden, dauern zu lange.

Inhaltsverzeichnis

[Bearbeiten] Das Client-Server-Prinzip

Im vorigen Abschnitt wurde bereits der X-Server angesprochen.

X11 ist ein Client-Server-System, d.h. das sämtliche grafischen Programme als Clients anzusehen sind, die Daten an den X-Server senden. Diese Daten sind zum Beispiel: "Male Fenster mit ID 0x5435354 an Stelle (800/345)", oder "Male einen Button der Größe 23x45 an Stelle (810/450)".

Der X-Server zeichnet dann die entsprechenden Widgets in der gewünschten Farbe an die gewünschte Stelle (vereinfacht gesagt).

Um aber ein solches Client-Server-Prinzip durchzuführen, benötigt man ein Netzwerk. Und dafür wird - normalerweise - das Loopback Interface verwendet, das die lokale IP-Adresse 127.0.0.1 (localhost) hat.

Wenn aber X11 das lokale Interface verwendet, kann dann auch ein anderes Netzwerkinterface verwendet werden?

Natürlich!

Wenn man sich per ssh -X auf einem entfernten Rechner einloggt und dort ein grafisches Programm (z.B. Mozilla) startet, dann wird dies auf dem eigenen Monitor angezeigt. Ob der entfernte Rechner 2 Meter entfernt neben dem eigenen Rechner steht, oder ob dieser Rechner in Timbuktu in einem Rechenzentrum steht, ist dabei unerheblich. Es ist nur etwas träger, wenn man eine Applikation von Timbuktu nach Deutschland umleitet.

(siehe auch Tipps und Tricks)

[Bearbeiten] Betrieb mit mehreren Monitoren

Natürlich kann der X-Server auch mehrere Grafikkarten bedienen. Sei es, weil zwei (oder mehr) Benutzer an dem Rechner arbeiten oder weil ein Benutzer mehrere Monitore benötigt.

Zuständig dafür ist die Xinerama-Erweiterung von X11, die nur eincompiliert werden muss (Distributoren haben dies bereits erledigt).

So kann man also entweder 2 unterschiedliche Desktops oder Fenstermanager auf zwei Monitoren gleichzeitig darstellen, oder einen grossen Desktop, der über zwei Monitore geht, nutzen.

[Bearbeiten] Zugriff von Windows

Auch von Windows aus kann auf X- Programme zurückgegriffen werden. Hierzu benötigt man einen X-Server, hier zwei Hinweise:

[Bearbeiten] Weblinks

'Persönliche Werkzeuge