Login
Login-Name Passwort


 
Newsletter
Werbung

Di, 9. Mai 2000, 00:44

Software::Desktop

Wird X11 modernisiert?

Ein Papier eines XFree86-Entwicklers schlägt eine grundlegende Erneuerung der 2D-Rendering-Engine von X11 vor.

X11 wurde im Jahr 1987 implementiert. Das Design wurde damals sowohl von den technischen Möglichkeiten der Rechner und Grafikkarten als auch von Termindruck und Mitarbeitermangel beeinflußt. Den Entwicklern war dies natürlich bewußt. Daher wurde die Möglichkeit geschaffen, den X-Server mit Hilfe von Extensions zu verbessern. Doch schnell wurde klar, daß diese Extensions praktisch nicht genutzt wurden, weil sie zu Inkompatibilitäten zwischen Servern und Clients führten.

Somit blieb in den letzten 13 Jahren das Design von X11 im Prinzip unverändert. Inzwischen haben die Leistungssteigerungen von Prozessoren und Graphikhardware dazu geführt, daß X11 moderne Graphikkarten nicht mehr voll ausreizen kann. So existieren beispielsweise Funktionen in OpenGL, die in vielen Graphikkarten mit Hardware-Beschleunigung ablaufen könnten, aber von X11 nicht unterstützt werden.

Nun wurde ein Vortrag von Keith Packard, Mitglied des XFree86-Entwicklungsteams und SuSE-Mitarbeiter, veröffentlicht. Keith analysiert darin die Schwächen der aktuellen X11-Implementierung:

  • Es fehlt ein Schablonen-Operator (Stencil);
  • Gerade und gebogene Linien können nicht exakt aneinanderstoßend gezeichnet werden;
  • Text kann nicht rotiert werden

Daneben gibt es noch andere Probleme, wie das Fehlen der Möglichkeit, Positionen in Bruchteilen von Pixeln anzugeben und fehlendes Anti-Aliasing.

Als Abhilfe schlägt Keith folgende neue Features vor, die nach und nach entwickelt werden sollen, zunächst in Software und dann hardwarebeschleunigt:

  • Alpha-Komposition, d.h. die Überlagerung von Bitmaps mit Transparenz-Effekt;
  • Anti-Aliasing;
  • Eine höhere Genauigkeit für das Koordinatensystem: Statt 16 bit für die Positionen sollen 32 verwendet werden, wovon 8 bit Nachkommastellen sind;
  • Neue Funktionen, z.B. zum Zeichnen eines Trapezoids;
  • Bessere Funktionen zur Berechnung der Größe von Zeichen

Ein Teil dieser Funktionen steht Applikationen zwar schon heute zur Verfügung, z.B. bei Verwendung der OpenGL-Library. Doch muß man dann weitgehend auf Hardware-Beschleunigung verzichten.

Eine wichtige Frage ist, wie kompatibel dieser Ansatz zum bestehenden System ist, und ob er ausreichende Unterstützung findet. Beides wird durch ein Posting von Keith auf Slashdot beantwortet. SuSE unterstützt die Implementierung des Vorschlags, und es ist schon bald mit einer Demo-Version zu rechnen. Er wird als X11-Extension implementiert, so daß alle existierenden Programme weiterhin funktionieren, und alle Programme, die mit der Extension compiliert wurden, von den Verbesserungen profitieren.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung