Login
Newsletter
Werbung

Mo, 7. Januar 2019, 11:03

Software::Distributionen

Intels Clear Linux will X11-Bibliotheken zusammenfassen

Intel-Entwickler Arjan van de Ven schlägt vor, für Clear Linux mehr als ein Dutzend kleiner Bibliotheken für X11 zu einer »Super-Lib« zusammenzufassen.

Das »Clear Linux Project for Intel Architecture« oder kurz Clear Linux ist als innovative Distribution für Cloud und Container bekannt. Es ist zudem ein auf Intels Prozessoren optimiertes Vorzeigeprojekt und arbeitet standardmäßig als zustandsloses System.

Entgegen dem allgemeinen Trend, monolithische Strukturen zu modularisieren, will Intel-Entwickler Arjan van de Ven für Clear Linux den umgekehrten Weg gehen und über ein Dutzend Bibliotheken von X11 zu einer Bibliothek zusammenzufassen, die er vorerst als »libSuperX11« bezeichnet. Das geht aus einem Eintrag auf der Mailingliste von Clear Linux hervor.

Van de Ven erläutert, jede grafische Anwendung müsse beim Start auf diese kleinen Bibliotheken verlinken, was jeweils zu zusätzlichem Ressourcenverbrauch in Form von Hauptspeicher in der Größenordnung von rund 32 KByte pro Bibliothek führe und die Startzeit der Anwendungen verlängere.

Zu Zeiten, als X11 noch aktiv weiterentwickelt wurde, ergab die 2004 begonnene Modularisierung des gesamten X11-Systems Sinn, so van de Ven weiter. Die Aufteilung habe eine dezentralisierte und entzerrte Entwicklung befördert. Zudem hätten damals grafische Anwendungen in der Regel nicht auf aufwendige Toolkits wie GTK oder Qt zugegriffen.

Nicht nur bei der Ausführung von Anwendungen soll der Vorschlag Vorteile bringen, sondern auch die Code-Optimierung während des Linkens im Compiler soll davon profitieren. Zusätzlich sollen Aufrufe der Bibliotheken zur Laufzeit ohne PLT auskommen. PLT steht für »Procedure Linkage Table« und dient zum Aufrufen externer Prozeduren und Funktionen, deren Adressen zum Zeitpunkt der Verknüpfung nicht bekannt sind und die zur Laufzeit vom Dynamic Linker aufgelöst werden müssen.

Die Kompatibilität mit bestehenden Binärdateien wird durch die Erstellung einer kleinen Stub-Bibliothek für jede konsolidierte Version erhalten, die nur die konsolidierte Bibliothek einliest, aber ansonsten leer ist. Einige Basiswerkzeuge wie etwa Xrandr müssten allerdings künftig eine große Bibliothek laden, auch wenn nur eine der jetzigen kleinen Bibliotheken benötigt wird.

Der Vorschlag ist auch nicht völlig risikolos, jedoch sind laut van de Ven die Risiken beherrschbar. Wenn eine der Komponentenbibliotheken einen Bruch der ABI mit geändertem SONAME benötigt, bricht das Modell zusammen, es sei denn, es werden Wege gefunden, in einem solchen Fall kompatibel zu bleiben. Das Risiko ist bei dem ausgereiften Entwicklungsstand von X11 aber zu vernachlässgen, da dies heutzutage weitere Probleme verursachen würde, die man nicht gewillt ist, zuzulassen. War ein solches Vorgehen in der Vergangenheit erforderlich, so wurde anstatt des ABI-Breaks eine zweite Bibliothek hinzugefügt, anstatt einen Kompatibilitätsbruch zu erzeugen.

Werbung
Kommentare (Insgesamt: 4 || Alle anzeigen || Kommentieren )
Pro-Linux
Frohe Ostern
Neue Nachrichten
Werbung