Warum brauchen Sie Treiber für den x-Server und den Linux-Kernel?

12

Kann jemand erklären, warum zwei Treibersätze benötigt werden, einer im Linux-Kernel und einer in X?

Ich verstehe, dass die Gerätetreiber im Kernel sind, aber welche Rolle spielen diese im xserver?

Benötigt wayland solche Treiber zum Laufen?

gimmesudo
quelle

Antworten:

15

Die Linux-Grafikunterstützung hat sich während des größten Teils des Kernel-Lebens stark verändert. Anfangs sprach der Kernel nur zu Textzwecken mit der Grafikkarte. Damals verwendete X seine Treiber, um alles zu tun, und so funktionierte es als riesiger Kernel außerhalb des Kernels.

Später wurde mit Direct Rendering Infrastructure (DRI) ein Teil des Codes für beschleunigte Grafikfunktionen kernseitig verschoben (Direct Rendering Manager, DRM - nichts mit Digital Rights Management zu tun), um eine konsistente, abstrahierte Schnittstelle zu 3D-Beschleunigungsfunktionen bereitzustellen.

Derzeit muss kein kernseitiges DRM-Modul geladen sein. Wenn Sie jedoch keine haben, wird Ihre X-Sitzung wahrscheinlich auf softwarebasiertes 3D zurückgreifen, das erheblich langsamer und leistungshungriger ist als Hardware-3D. Beim Laufen glxinfowerden Informationen dazu angezeigt.

Wayland ist eine etwas andere Geschichte . Es befindet sich zwischen dem Kernel und den Client-Anwendungen. Bei Wayland ist der X-Server eine andere Client-Anwendung, bei der das Stammfenster nur als eine andere Sache angezeigt wird. Wayland übernimmt die Aufgabe, mit der Hardware zu sprechen (X spricht stattdessen mit Wayland). Da sich das Projekt noch stark in der Entwicklung befindet, ist nicht abzusehen, wo es enden wird, aber meines Erachtens ist weiterhin Kernel-Unterstützung für 3D-Rendering erforderlich.

Dies geht auch aus den Wayland-Architekturdiagrammen hervor: Links ist der aktuelle Stand eines modernen X-Desktops, rechts die vorgeschlagene Wayland-Architektur. Der Wayland-Compositor ersetzt den X-Server als das, was mit der Hardware kommuniziert, ersetzt jedoch nicht die Kernel- Infrastruktur - Sie benötigen also weiterhin die entsprechende Kernel-Unterstützung. Angesichts der Ziele des Projekts sollte mehr Material in den Kernel verschoben werden, um eine noch bessere Abstraktion zu erreichen. Wayland ist wie der X-Server weiterhin von der Grafikhardware abhängig.

Bildbeschreibung hier eingeben

Alexios
quelle
Off-Topic: Welche Software verwenden Sie für das Diagramm? Es ist sehr nett.
Rufo El Magufo
1
Ich nahm die beiden Diagramme von The Wayland Page und verband sie mit der GIMP. Es gibt eine Reihe von Werkzeugen, die so schöne Diagramme erstellen können. Graphviz für die vollautomatische Lösung, * TeX und PGF / TikZ für höchste Qualität und Inkscape, wenn Sie den manuellen Weg gehen möchten. Es könnte sogar in GIMP gemacht werden, aber ein Vektorpaket ist viel einfacher.
Alexios
Ich habe pnginfofür die Quelldatei Folgendes verwendet: Der tEXtBlock legt nahe, dass dies mit Inkscape geschehen ist.
Alexios