Veröffentlichung des alternativen X-Servers yserver 1.5

Die Veröffentlichung des X11-Servers yserver 1.5.0, der von Grund auf in Rust geschrieben wurde und die aktuellen Erweiterungen des X11-Protokolls unterstützt, hat stattgefunden. Das Projekt zielt nicht darauf ab, alle Funktionen des Xorg Servers zu reproduzieren und beschränkt sich lediglich auf die Funktionalität, die für den Betrieb moderner Desktop-Umgebungen, Fenstermanager, Anwendungen und Grafikbibliotheken (GTK, Qt, SDL, GLFW) erforderlich ist. Zu den getesteten Umgebungen gehören MATE, Xfce, Cinnamon, Sonic und Enlightenment sowie Fenstermanager wie icewm, FVWM3, openbox, i3 und wmaker. Der Code des Projekts wird unter der MIT-Lizenz veröffentlicht.

Es wurde beschlossen, in yserver keine veralteten und spezifischen Funktionen zu unterstützen, wie z. B. die Verarbeitung mehrerer X11-Bildschirme in einer. Server (Mehrmonitorbetrieb wird unterstützt), andere als TrueColor-Farbanzeigen, indirektes Rendering (indirect GLX), DDX-Treiber-API, alte Schriftverarbeitungsmethoden und die Verbindung von Clients mit anderer Byte-Reihenfolge (Übersetzung zwischen big-endian und little-endian).

Die grafische Ausgabe erfolgt über DRM/KMS und Vulkan-Treiber von Mesa. Zum Management von Sitzungen und zur Bereitstellung von gemeinsam genutztem Eingabe- und Ausgabegerät wird die Bibliothek libseat verwendet. Neben dem eigenständigen X-Server wird ynest angeboten – ein Backend für verschachtelte Ausführung, das das Arbeiten aus Xwayland oder einem anderen X11-Server.

Die Arbeit wurde auf Systemen mit GPU AMD Ryzen 9 6900HX (Rembrandt, RDNA2, mesa-Treiber RADV), AMD RX580 (Polaris/GCN4, RADV), Intel i5-7200U (Kaby Lake, mesa-Treiber ANV), NVIDIA GTX 1050, Snapdragon X1 X1E80100 (Adreno X1, Turnip), Apple M1 MBA, M2 MBP sowie in Virtualisierungssystemen mit virtio-gpu und virtuellem GPU Venus getestet. Der Betrieb unter Linux und FreeBSD wird unterstützt.

In der neuen Version:

  • Die Unterstützung des reverse-PRIME-Mechanismus wurde hinzugefügt, mit dem der integrierte GPU zum Rendern und die GPU der dedizierten Grafikkarte für die Ausgabe auf externen Monitoren, die an die Ports der dedizierten Grafikkarte angeschlossen sind, verwendet werden kann.
  • Die Unterstützung für die Übertragung von Bildwiederholfrequenzdaten an Mesa über die GLX_OML_sync_control-Erweiterung wurde hinzugefügt.
  • Eine Optimierung zur Verringerung der Latenz bei Clients mit deaktivierter vertikaler Synchronisation (vsync-off) wurde implementiert.
  • Die Extraktion von Herstellernamen GLX aus dem Grafiktreiber zur Auswahl der entsprechenden klientseitigen GLX-Bibliothek (z. B. Mesa oder NVIDIA) wurde gewährleistet.
  • Die Unterstützung für DRI3 1.4-Synchronisationsobjekte unter Verwendung der drm_syncobj-Primitiven des DRM (Direct Rendering Manager) Kerns wurde implementiert.
  • Die Unterstützung eines Algorithmus zur Verfolgung von Änderungen auf dem Bildschirm für die Neuzeichnung nicht des gesamten Inhalts, sondern nur der geänderten Teile, die in zusammengesetzten Umgebungen verwendet werden, wurde hinzugefügt. Servern Wayland, basierend auf der wlroots-Bibliothek, wurde implementiert.
  • Die Möglichkeit, Fensterrahmen auf der Seite des X11-Servers zu zeichnen, wurde bereitgestellt.
  • Die Paketerstellung für die Architektur Aarch64 wurde neben x86_64 realisiert.

Quelle: opennet.ru

Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server 🔥 Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster