X.Org
| Inhaltsverzeichnis |
|
2 Architektur 3 Versionen 4 Weblinks |
Geschichte
Nachdem innerhalb des XFree86-Projekts Streitigkeiten wegen der neuen Lizenz für das anstehende Release der Version XFree86-4.4 ausgebrochen waren, verließen viele Entwickler das Projekt, um den Server auf Basis der alten Lizenz weiter zu entwickeln. Da die neue Lizenz von vielen Linux-Distributionen ebenfalls als GPL-inkompatibel abgelehnt wurde, formten die Entwickler zusammen mit Mitarbeitern verschiedener Distributionen und der alten X.Org-Organisation, die schon früher für X-Standards verantwortlich war, die neue X.Org-Stiftung. Dabei verknüpfte man die Arbeit eng mit der des freedesktop.org-Projekts, welches die Quelltexte auch auf seinen Servern anbietet und Teile der Entwicklung koordiniert. Die Stiftung wird, im Gegensatz zur alten X.Org-Organisation, hauptsächlich von Entwicklern geleitet. Die Entwicklung selbst geschieht in einem offenen Rahmen.
Architektur
Der X.Org-Server kommuniziert theoretisch mit dem Betriebssystem-Kernel (meistens ein Linux-, BSD- oder HURD-Kernel), um Ein- und Ausgabegeräte anzusteuern, mit Ausnahme von Grafikkarten. Diese werden von X.Org direkt unter Umgehung des Kernels angesprochen. In der Praxis greift X.Org häufig auch direkt auf Tastaturen und Mäuse zu, ohne ausreichend Rücksicht auf die Arbeit des Kernel mit den entsprechenden Geräte zu nehmen. Für die weitaus meisten Grafikkarten der letzten 15 Jahre bringt X.Org eigene Treiber mit. Für einige Karten (am bekanntesten sind die von nVidia und ATI) gibt es zusätzlich Binärtreiber der Hersteller, welche die X.Org-Treiber ersetzen. Diese proprietären Treiber bringen meist eine verbesserte 3D-Unterstützung mit sich, sind aber keine freie Software. Der Quelltext ist also nicht verfügbar. Es ist auch möglich, X.Org auf einem Framebuffer-Gerät arbeiten zu lassen, wozu dann ein Grafikkarten-Treiber des Kernels benutzt wird.
Weil er eine Menge Low-Level-Operationen durchführt, muss der Server mit den Rechten des Benutzers root laufen, bzw. mit UID 0.
Auf einem typischen POSIX-System liegen die X.Org-Konfigurationsdateien im Verzeichnis /etc/X11. Die grundlegende Konfiguration erfolgt in der Datei xorg.conf, die u. a. Einstellungen zum verwendeten Monitor, Tastatur, Maus und Grafikkarte enthält. Für den weniger erfahrenen Benutzer existieren eine Reihe von (auch grafischen) Frontends, die die Konfiguration des X-Servers erleichtern. Moderne Distributionen bieten auch eine halbautomatische Erkennung der richtigen Einstellungen. Zusätzlich bringen neuere proprietäre Treiber ebenfalls graphische Frontends mit sich.
Versionen
Als Basis für den X.Org-Server diente das Pre-Release (XFree86-4.4RC2) von XFree86, welches als letztes Release vollständig auf der alten Lizenz basierte. Auf dieser Basis veröffentlichte X.Org am 7. April 2004 den ersten eigenen Server unter der Bezeichnung X11R6.7.0. Dieser enthielt weniger neue Eigenentwicklungen als viel mehr letzte Patches, da es sich bereits um einen Release Candidate handelte. Die zweite Version X11R6.8.0 wurde am 8. September 2004 veröffentlicht und enthielt deutlich mehr Neuerungen. So ermöglicht es die neu hinzugekommene 'Damage' Funktion, dass X-Clients erkennen können, welche Teile von Fenstern verändert wurden. Somit zeichnen die Clients nur veränderte Teile neu, was vor allen Dingen für die Netzwerkübertragung von grafischen Ausgaben wichtig ist. Ebenso wurden 'Composite Extensions' experimentell implementiert, welche echte Transparenz und Schatteneffekte der Fenster ermöglichen. In der aktuellen, am 9. Februar 2005 erschienenen Version X11R6.8.2 wurden einige Sicherheitslücken beseitigt.
Der X.Org-Server kommt inzwischen bei nahezu allen Distributionen zum Einsatz.
Innerhalb des X.Org-Projektes existieren eine Reihe von X-Servern:
- X.Org ist der offizielle X-Server
- KDrives ist ein extrem modularer X-Server, der als Basis für Debrix gedient hat und momentan nur zum Ausprobieren existiert. Er heißt KDrives, weil er komplett mit Hilfe des Kernels funktioniert.
- Debrix ist die Entwicklungsrichtung, die die Modularisierung und Strukturierung des X-Servers komplett verändern soll.
- XGL soll eine Implementierung eines X-Servers als GL-Client sein. Diese Technik soll Effekte wie Transparenz, Suche mit Suchkegel und dergleichen beschleunigen, indem diese Effekte nicht mehr auf dem Prozessor sondern von der Grafikkarte berechnet werden.
Weblinks
- Die X.Org Foundation
- Die X.Org Foundation auf freedesktop.org
- Übersicht aller X.Org Releases
- X11RC6.8.1 Release Notes