Das Projekt Phoenix entwickelt einen modernen X-Server, der in der Sprache Zig geschrieben ist.

Im Rahmen des Phoenix-Projekts wurde der Versuch unternommen, von Grund auf einen neuen X-Server zu schaffen, der nicht auf den Entwicklungen des X.org Servers basiert und darauf abzielt, eine moderne Alternative zu entwickeln, die das X11-Protokoll erweitert und Möglichkeiten zur KompatibilitĂ€t mit Wayland bietet. In der aktuellen Entwicklungsphase ist Phoenix noch nicht fĂŒr den tĂ€glichen Gebrauch bereit, ermöglicht jedoch bereits die Arbeit mit einfachen Anwendungen, die zur Grafikausgabe GLX, EGL oder Vulkan verwenden und in einer verschachtelten Umgebung Phoenix ĂŒber einen bestehenden X-Server ausfĂŒhren. Der Code ist in der Programmiersprache Zig geschrieben und wird unter der Lizenz GPLv3 verbreitet.

In Phoenix beabsichtigt man nicht, die gesamte FunktionalitĂ€t des X11-Protokolls, die im X.org Server verfĂŒgbar ist, umzusetzen und veraltete Hardware zu unterstĂŒtzen. Beispielsweise plant man anstelle der vollstĂ€ndigen UnterstĂŒtzung der Elemente des X11-Protokolls fĂŒr die Arbeit mit Schriftarten nur die grundlegenden Operationen hinzuzufĂŒgen, die in realen Anwendungen gefragt sind. Anstelle der UnterstĂŒtzung klassischer X.Org-Grafiktreiber werden zur Grafikausgabe Linux DRM (Direct Rendering Manager) und Mesa GBM (Generic Buffer Management) verwendet.

Es wird angenommen, dass die EinschrĂ€nkung der FunktionalitĂ€t keine Auswirkungen auf die Möglichkeit hat, gĂ€ngige Anwendungen auszufĂŒhren, selbst solche, die GTK2 verwenden. Ein solcher Ansatz wird es erheblich vereinfachen, die Implementierung zu gestalten und gleichzeitig die KompatibilitĂ€t mit Programmen zu gewĂ€hrleisten, die in den letzten 20 Jahren veröffentlicht wurden, sowie den Betrieb auf Hardware zu ermöglichen, die nicht Ă€lter als 15-20 Jahre ist.

Dabei plant man, dem X11-Protokoll neue Erweiterungen hinzuzufĂŒgen, die moderne Trends berĂŒcksichtigen, wie die UnterstĂŒtzung von HDR, die korrekte UnterstĂŒtzung von Multi-Monitor-Konfigurationen (getrennte Framebuffer fĂŒr jeden Monitor), die Möglichkeit, DPI in Bezug auf die Monitore anzugeben, adaptive Änderungen der Bildwiederholfrequenz (VRR) und Schutz vor Bildzerreißern. In Phoenix wurde auch das Verhalten bei der Verarbeitung von Zeichenfolgen geĂ€ndert — standardmĂ€ĂŸig wird UTF-8 verwendet, wĂ€hrend ISO Latin-1 nur bei expliziter Angabe dieser Codierung angewendet wird.

Um die Sicherheit der Anwendung in Phoenix zu erhöhen, werden die Fenster standardmĂ€ĂŸig voneinander isoliert und können nur nach ausdrĂŒcklicher BestĂ€tigung der Berechtigungen ĂŒber einen speziellen Dialog oder durch Erteilung von Rechten beim Start aufeinander zugreifen oder auf Eingabeereignisse zugreifen. Um die KompatibilitĂ€t mit Ă€lteren X11-Clients zu gewĂ€hrleisten, werden im Falle fehlender Berechtigungen anstelle von Fehlermeldungen leere Daten ĂŒbergeben. Globale Tastenkombinationen funktionieren nur bei gedrĂŒckter Modifier-Taste oder durch Erteilung separater Zugriffsrechte.

Zur AusfĂŒhrung von Anwendungen, die nur Wayland unterstĂŒtzen, wird geplant, eine integrierte UnterstĂŒtzung dieses Protokolls zu implementieren oder externe Schichten wie 12to11 zu verwenden.

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