Compiz & Linux Compositing: Wie passt es in die X-Architektur?

512
Latanius

Keine wirklich "wie man Sachen löst" Frage, aber ... Ich habe mich gefragt, wie die moderne X-Architektur funktioniert, mit compiz & all.

Was ich darüber weiß:

  • Am Anfang waren der X-Server, die Clients verbunden (vermutlich auf TCP), und sendeten dann Nachrichten an den Server, um ihn anzuweisen, Fenster usw. anzuzeigen.
  • Da dies für OpenGL- und 3D-Beschleunigung nicht (oder gar nicht schnell genug) funktionierte, wurden zusätzliche APIs für das direkte Rendern erstellt (DRI) und mit welchen Dingen sprachen die X-Clients zusätzlich zum X-Server Sachen rendern und durch welche Schnittstellen?)
  • und schließlich geben Sie Compiz ein: X-Clients werden (irgendwie) in OpenGL-Texturen gerendert, die dann zu einem ausgefallenen Bildschirm mit durchscheinenden Fenstern zusammengesetzt und auf dem Bildschirm gerendert werden.

Was mich besonders interessiert, ist, welche Komponenten das System hat und wie verbinden sie sich miteinander? Wie ... wenn im System eine Box mit der Bezeichnung "compiz" steht ... ist sie im X-Server? Wenn nicht, wie landen die gerenderten Bilder aus den Apps darin? Und wo wird es gerendert? Ist das ein weiterer X-Server? Oder DRI?

Natürlich wäre ich auch glücklich, wenn auf einige Dokumente verwiesen würde, die in der Lage sind, die oben beschriebene Verwirrung zu beseitigen (vorausgesetzt, sie sind wesentlich kürzer als Einheiten in Buchgröße).

0

1 Antwort auf die Frage

0
demas

Hier ist ein guter Artikel, der Ihnen helfen kann.

Während dies die Frage theoretisch beantworten kann, ist es [bevorzugt] (http://meta.stackexchange.com/q/8259), die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz bereitzustellen. slhck vor 11 Jahren 1
trotzdem war es das, wonach ich gesucht habe, danke! Latanius vor 11 Jahren 0