Neue Versionen von Wine 9.2 und Winlator 5.0. Für den Linux-Kernel wurde ein NTsync-Treiber vorgeschlagen

Es fand eine experimentelle Veröffentlichung einer offenen Implementierung der Win32-API – Wine 9.2 – statt. Seit der Veröffentlichung von 9.1 wurden 14 Fehlerberichte geschlossen und 213 Änderungen vorgenommen.

Die wichtigsten Änderungen:

  • Die Wine Mono-Engine mit .NET-Plattformimplementierung wurde auf Version 9.0.0 aktualisiert.
  • Verbesserte Unterstützung für die Taskleiste.
  • Die Ausnahmebehandlung wurde auf ARM-Plattformen verbessert.
  • Der Build verwendet das Makro YEAR2038, um den 64-Bit-Typ time_t zu verwenden.
  • Der winewayland.drv-Treiber hat die Cursor-Verarbeitung verbessert.
  • Fehlermeldungen im Zusammenhang mit dem Betrieb von Spielen sind geschlossen: Elite Dangerous, Epic Games Launcher 15.21.0, LANCommander, Kodu.
  • Geschlossene Fehlerberichte im Zusammenhang mit dem Betrieb von Anwendungen: Quick3270 5.21, Digikam, Dolphin Emulator, Windows Sysinternals Process Explorer 17.05, Microsoft Webview 2-Installationsprogramm.

Darüber hinaus wurde die Android-Anwendung Winlator 5.0 veröffentlicht, die ein Framework für Wine- und Box86/Box64-Emulatoren zum Ausführen von Windows-Anwendungen auf der Android-Plattform bietet. Winlator stellt Ubuntu-basierte Linux-Umgebungen mit Mesa3D, DXVK, D8VK und CNC DDraw bereit, in denen für die x86-Architektur erstellte Windows-Anwendungen mithilfe eines Emulators und Wine auf ARM-Android-Geräten ausgeführt werden. Die neue Version verbessert den Task-Manager, verbessert die Leistung, bietet Unterstützung für das Ändern von Designs und verbessert die Kompatibilität mit XInput.

Sie können auch die Veröffentlichung des ntsync-Treibers auf der Linux-Kernel-Mailingliste beachten, der das /dev/ntsync-Zeichengerät und eine Reihe von Synchronisierungsprimitiven implementiert, die im Windows NT-Kernel verwendet werden. Die Implementierung solcher Grundelemente auf Kernel-Ebene kann die Leistung von Windows-Spielen, die mit Wine gestartet werden, erheblich verbessern. Beispielsweise stieg bei Verwendung des ntsync-Treibers im Vergleich zur Implementierung von NT-Synchronisierungsprimitiven im Benutzerbereich die maximale FPS im Spiel Dirt 3 um 678 %, im Spiel Resident Evil 2 um 196 % und in Tiny Tina's Wonderlands um 177 %. , Lara Croft: Temple of Osiris – um 131 %, Call of Juarez – um 125 %, The Crew – um 96 %, Forza Horizon 5 – um 48 %, Anger Foot – um 43 %.

Durch die Eliminierung des Overheads, der mit der Ausführung von RPC im Benutzerbereich verbunden ist, werden erhebliche Leistungssteigerungen erzielt. Das Erstellen eines separaten Treibers für den Linux-Kernel wird durch die Schwierigkeit erklärt, die NT-Synchronisierungs-API zusätzlich zu vorhandenen Grundelementen im Kernel korrekt zu implementieren, beispielsweise der NtPulseEvent()-Operation und dem „Warten auf alles“-Modus in NtWaitForMultipleObjects( ) erfordern eine direkte Verwaltung der Warteschlange. Patches mit dem ntsync-Treiber haben noch RFC-Status, d.h. wurden der Community zur Diskussion und Überprüfung vorgelegt, sind jedoch noch nicht für die Übernahme in den Haupt-Linux-Kernel geeignet.

Source: opennet.ru

Kommentar hinzufügen