Wir haben so viele Optionen für Fenstermanager, Shells, Desktop-Umgebungen, Distributionen und Kernel-Architekturen unter Linux, aber warum haben wir nach (vielleicht) 20 Jahren nur den X.org-Server (einschließlich seines Vorgängers) als unterste Ebene der GUI?
Ich weiß über XFree86 und Y Bescheid, aber die meisten stecken fest. Ist es so schwer, eine neue (dh moderne) zu schaffen? Oder gibt es einen anderen Grund, warum wir auf X.org stecken bleiben?
Trotz der Tatsache, dass X.org über 20 Jahre alt ist, was genau benötigen Sie von einem Windows-Server, den es nicht bietet? Sie haben OpenGL-Unterstützung, Anti-Aliasing-Schriftarten, doppelte Pufferung, schicke durchscheinende Composite-Fenster und hardwarebeschleunigte Videowiedergabe. Sie können sogar einige DirectX-Spiele mit Wein spielen, wenn Sie sich dafür interessieren. Was macht einen X11-Server Ihrer Meinung nach "modern"?
Das Schreiben eines X11-Servers ist schwierig. Noch schwieriger ist es, es zu entwickeln, Funktionen hinzuzufügen und 20 Jahre lang darauf zu hacken, um es relevant zu halten. Die Eintrittsbarriere für die X-Server-Programmierung ist hoch, und ich denke, es gibt nicht so viele Leute, die darauf hacken. Tatsächlich ist der entscheidende Punkt von X.org das kontinuierliche Bemühen, das vorhandene Code-Durcheinander in eine besser verwaltbare Infrastruktur umzuwandeln und zu modularisieren, die eine einfachere Entwicklung und Implementierung neuer Funktionen ermöglicht.
Während das Ding "Lass es uns umschreiben" interessant aussehen mag, denke ich, dass es nicht wirklich einen Sinn hat .
quelle
Nun, es gibt SVGALib oder fbdev, Sie könnten einen Fenstermanager darüber bauen, wenn Sie möchten. Ich denke, die vorhandenen Desktop-Umgebungen (Gnome / KDE) basieren auf den X.Org-Programmierschnittstellen, sodass Sie eine Menge Arbeit erledigen müssen, damit sie auf einem anderen Substrat funktionieren. Ich habe gehört, dass Android ein eigenes Frame-Buffer-System verwendet und sich nicht auf X verlässt. Im Gegensatz zu POSIX gibt es für das zugrunde liegende Grafiksystem keine wirklich tragbare API, daher verwenden wir alle standardmäßig X.
quelle
Wie andere bereits gesagt haben, ist Wayland die wichtigste Alternative zu X.org, die derzeit entwickelt wird. Im Moment ist es bei weitem nicht für normale Aufgaben verwendbar. Es gab jedoch einige aufregende neue Entwicklungen.
Kristian Høgsberg (Waylands Autor) hat heute die Codeänderungen an Mesa übergeben, die erforderlich sind, um Wayland in der Master-Mesa-Niederlassung auszuführen (sie befanden sich zuvor in seinem persönlichen Repository). Dies sollte die Verwendung von Wayland vereinfachen, da Sie möglicherweise das Mesa-Paket Ihrer Distribution verwenden können sollten, anstatt es selbst zu kompilieren. (Mesa ist bei weitem das größte Paket, das gebaut werden muss, um Wayland auszuführen.)
Kürzlich hat Kristian einen Screenshot seiner anfänglichen Unterstützung für die Verwendung von Gtk + in Wayland veröffentlicht:
Es gibt auch den Beginn eines Hafens von Qt nach Wayland .
quelle
Nun, es gibt Wayland, aber das ist noch nicht fertig.
quelle