Noves versions de Wine 9.2 i Winlator 5.0. S'ha proposat un controlador ntsync per al nucli Linux

Va tenir lloc un llançament experimental d'una implementació oberta de l'API Win32 - Wine 9.2. Des del llançament de la 9.1, s'han tancat 14 informes d'errors i s'han fet 213 canvis.

Els canvis més importants:

  • El motor de Wine Mono amb implementació de la plataforma .NET s'ha actualitzat per al llançament 9.0.0.
  • Suport millorat a la safata del sistema.
  • S'ha millorat el maneig d'excepcions a les plataformes ARM.
  • La compilació utilitza la macro YEAR2038 per utilitzar el tipus time_t de 64 bits.
  • El controlador winewayland.drv ha millorat el maneig del cursor.
  • Els informes d'error relacionats amb el funcionament dels jocs estan tancats: Elite Dangerous, Epic Games Launcher 15.21.0, LANCommander, Kodu.
  • Informes d'errors tancats relacionats amb el funcionament de les aplicacions: Quick3270 5.21, digikam, Dolphin Emulator, Windows Sysinternals Process Explorer 17.05, instal·lador de Microsoft Webview 2.

A més, s'ha llançat l'aplicació Winlator 5.0 per a Android, que proporciona un marc per als emuladors Wine i Box86/Box64 per executar aplicacions de Windows a la plataforma Android. Winlator desplega entorns Linux basats en Ubuntu amb Mesa3D, DXVK, D8VK i CNC DDraw, en què les aplicacions de Windows creades per a l'arquitectura x86 s'executen en dispositius ARM Android mitjançant un emulador i Wine. La nova versió millora el gestor de tasques, millora el rendiment, afegeix suport per canviar temes i millora la compatibilitat amb XInput.

També podeu notar la publicació a la llista de correu del nucli de Linux del controlador ntsync, que implementa el dispositiu de caràcters /dev/ntsync i un conjunt de primitives de sincronització utilitzades al nucli de Windows NT. La implementació d'aquestes primitives a nivell del nucli pot millorar significativament el rendiment dels jocs de Windows llançats amb Wine. Per exemple, quan s'utilitza el controlador ntsync, en comparació amb la implementació de primitives de sincronització NT a l'espai de l'usuari, el FPS màxim al joc Dirt 3 va augmentar un 678%, al joc Resident Evil 2 - un 196%, Tiny Tina's Wonderlands - un 177% , Lara Croft: Temple d'Osiris: un 131%, Call of Juarez: un 125%, The Crew: un 96%, Forza Horizon 5: un 48%, Anger Foot: un 43%.

S'aconsegueixen guanys de rendiment significatius eliminant la sobrecàrrega associada a l'execució de RPC a l'espai de l'usuari. La creació d'un controlador separat per al nucli de Linux s'explica per la dificultat d'implementar correctament l'API de sincronització NT a sobre de les primitives existents al nucli, per exemple, l'operació NtPulseEvent() i el mode "espera per a tots" a NtWaitForMultipleObjects( ) requereixen una gestió directa de la cua d'espera. Els pedaços amb el controlador ntsync encara tenen l'estat RFC, és a dir. han estat posats en discussió i revisió per part de la comunitat, però encara no són elegibles per a l'adopció al nucli principal de Linux.

Font: opennet.ru

Afegeix comentari