Grafiktreiber unter Linux: Kaum Besserung in Sicht
Seite 2: Grafiktreiber unter Linux: Kaum Besserung in Sicht
Nvidia
Auch Nvidia hat früher Spezifikationen für seine Grafikchips offen gelegt, etwa für den riva-Chip, für den so ein Open-Source-Treiber mit 3D-Beschleunigung entwickelt werden konnten. Für neuere Grafikkerne stellt Nvidia keine Dokumentation mehr bereit, entwickelt aber selbst an dem im Rahmen des X.org-Projekts gepflegten Treiber "nv" mit. Der unterstützt allerdings weder 3D-Beschleunigung noch Zweischirmbetrieb oder den TV-Ausgang und gilt zudem als schwer verständlich geschrieben.
Unterdes programmieren einige Entwickler im Rahmen des Nouveau-Projekts an einem Open-Source-Treiber, der auch die Nutzung der 3D-Beschleunigungsfunktionen ermöglicht. Dazu wollen sie ähnlich wie beim r300-Projekt auf Reverse-Engineering zurückgreifen.
Immerhin gilt Nvidias proprietärer Treiber "nvidia" als der beste unter den Closed-Source-Grafiktreibern. Er lässt sich relativ einfach installieren, funktioniert mit nahezu allen Nivida-Chips, ermöglicht eine umfassende Nutzung der Grafikkartenfunktionen und erwies sich in unseren Tests als recht zuverlässig.
Der bunte Rest
Für Matrox-Karten bis zum G550 gibt es brauchbare Open-Source-Treiber, neuere Chips unterstützt nur ein Closed-Source-Treiber. VIA und SiS wirft Airlie eine schlechte Zusammenarbeit mit der Open-Source-Gemeinde vor, deren Ursachen er in kulturellen Unterschieden vermutet. Beide Firmen veröffentlichen ab und an Linux-Treiber zusammen mit einer Presseinformation, aber dass Linux die Grafikhardware recht gut unterstützt, ist vor allem Treiber-Projekten wie Unichrome und Openchrome für VIA-Chips sowie Thomas Winischofers Engagement für freie SiS-Treiber zu verdanken.
Closed-Source-Treiber
Bleiben die bekannten Nachteile von Closed-Source-Treibern. Ein Betriebssystem, in dem man Closed-Source-Treiber in den Kernel oder X.org lädt, ist eben kein Open-Source-System mehr; die mit einem GPL-Betriebssystem wie Linux gewonnenen Freiheiten gehen verloren. So arbeiten die Closed-Source-Treiber nicht auf von Linux durchaus unterstützten Systemen wie PPC- oder Sparc-Hardware; selbst auf x64-Treiber mussten die Linux-Anwender erst einmal warten.
Wenn der Support für einen ältere Chip in den proprietären Treibern entfernt wird, bleibt nur der Kauf einer neuer Hardware: Ältere Treiberversionen funktionieren irgendwann mit neuen Kernel- oder X.org-Versionen nicht mehr – in den ersten Distributionen mit Kernel 2.6 etwa ließen sich die Nvidia-Treiber nicht nutzen, der Umstieg auf das modulare X.org 7.0 setzte den ATI-Treiber erst einmal außer Gefecht. Schon minimale Änderungen am Kernel oder an X.org können Änderungen am Treiber nötig machen, die den Zugang zu den Quelltexten erfordern. Mit X.org 7.1 kommen die proprietären Treiber der beiden großen Grafikchiphersteller auch zwei Monate nach dessen Vorstellung nicht zurecht.
Airlie spekuliert, dass Patente wohl der Hauptgrund seien, warum die Hersteller ihre Treiber nicht offenlegen wollen. Aber selbst für Anhänger finsterer Verschwörungstheorien, die hinter allem Übel Microsoft vermuten, findet er Argumente: So habe kein Grafikchiphersteller mehr Spezifikationen freigeben, nachdem seine Hardware in einer Xbox verbaut wurde oder die Chips DirectX-8.0 implementierten.
Zudem handelt man sich mit proprietären Kerneltreibern möglicherweise ein Lizenzproblem ein: Einige Kernel-Entwickler sehen dadurch ihr Copyright am Kernel verletzt. Ihr Argument: Jeder Treiber, der Kernelschnittstellen nutzt, sein ein von Kernel abgeleitetes Werk ("derived work"), das nach den Bestimmungen der GNU General Public License (GPL), der der Kernel unterliegt, ebenfalls unter der GPL – also mit Quelltexten – veröffentlicht werden muss.
Greg Kroah-Hartman, heute einer der wichtigsten Kernel-Entwickler, der bereits in der Vergangenheit durch sein Engagement für Open-Source-Treiber mehrfach aufgefallen ist, äußert sich dazu in seiner OLS-Keynote unmissverständlich: "Closed source linux kernel modules are illegal". Anschließend legt er mit "Closed source Linux kernel modules are unworkable" und "Closed source Linux kernel modules are unethical" nach.
Ausblick
Alles in allem ist die Situation rund um Grafiktreiber unter Linux weiterhin alles andere als rosig. Einzig für Intel-Chipsätze mit integrierter Grafik erhält der Linux-Anwender akzeptable Treiber. Da sie mittlerweile für die meisten Ansprüche ausreichend 3D-Leistung bieten und das System anders als früher nicht mehr ausbremsen, dürften die Intel-Chips für zahlreiche Linux-Anwender eine akzeptable Lösung dastellen.
Für aktuelle 3D-Shooter reicht die Leistung der integrierten Chipsätze jedoch nicht aus; hohe 3D-Performance liefern erst Grafikkarten mit aktuellen ATI- oder Nvidia-Chip. Die Empfehlung unter Linux lautet eindeutig Nvidia: Hier gibt es offene 2D-Treiber, die ausreichen, solange man auf Zweischirmbetrieb und 3D-Beschleunigung verzichten kann, und proprietäre Treiber, die fast alle Funktionen der Grafikkarten unterstützen – solange die Kernel-Entwickler diese Treiber noch zulassen. (thl)
Weitere HintergrĂĽnde rund um Grafiktreiber liefert: (thl)
- Thorsten Leemhuis, Verwaschene Aussichten, Aktuelle Grafikchips von ATI, Intel und Nvidia unter Linux, c't 12/2006, S. 222