Novas versións de Wine 9.2 e Winlator 5.0. Propúxose un controlador ntsync para o núcleo de Linux

Realizouse unha versión experimental dunha implementación aberta da API Win32 - Wine 9.2. Desde o lanzamento da versión 9.1, pecháronse 14 informes de erros e fixéronse 213 cambios.

Os cambios máis importantes:

  • Actualizouse o motor Wine Mono coa implementación da plataforma .NET para a versión 9.0.0.
  • Soporte mellorado da bandexa do sistema.
  • Mellorouse o manexo de excepcións nas plataformas ARM.
  • A compilación usa a macro YEAR2038 para usar o tipo time_t de 64 bits.
  • O controlador winewayland.drv mellorou o manexo do cursor.
  • Os informes de erros relacionados co funcionamento dos xogos están pechados: Elite Dangerous, Epic Games Launcher 15.21.0, LANCommander, Kodu.
  • Informes de erros pechados relacionados co funcionamento das aplicacións: Quick3270 5.21, digikam, Dolphin Emulator, Windows Sysinternals Process Explorer 17.05, Microsoft Webview 2 installer.

Ademais, lanzouse a aplicación Winlator 5.0 para Android, que ofrece un marco para os emuladores Wine e Box86/Box64 para executar aplicacións de Windows na plataforma Android. Winlator implanta entornos Linux baseados en Ubuntu con Mesa3D, DXVK, D8VK e CNC DDraw, nos que as aplicacións de Windows creadas para a arquitectura x86 execútanse en dispositivos ARM Android mediante un emulador e Wine. A nova versión mellora o xestor de tarefas, mellora o rendemento, engade soporte para cambiar temas e mellora a compatibilidade con XInput.

Tamén pode observar a publicación na lista de correo do núcleo de Linux do controlador ntsync, que implementa o dispositivo de caracteres /dev/ntsync e un conxunto de primitivas de sincronización utilizadas no núcleo de Windows NT. A implementación de tales primitivos a nivel do núcleo pode mellorar significativamente o rendemento dos xogos de Windows lanzados usando Wine. Por exemplo, ao usar o controlador ntsync, en comparación coa implementación de primitivas de sincronización NT no espazo do usuario, o FPS máximo no xogo Dirt 3 aumentou nun 678%, no xogo Resident Evil 2 - nun 196%, Tiny Tina's Wonderlands - nun 177% , Lara Croft: Temple of Osiris - nun 131%, Call of Juarez - nun 125%, The Crew - nun 96%, Forza Horizon 5 - nun 48%, Anger Foot - nun 43%.

Conséguense ganancias significativas de rendemento eliminando a sobrecarga asociada á execución de RPC no espazo do usuario. A creación dun controlador separado para o núcleo de Linux explícase pola dificultade de implementar correctamente a API de sincronización NT enriba das primitivas existentes no núcleo, por exemplo, a operación NtPulseEvent() e o modo "esperar por todos" en NtWaitForMultipleObjects( ) requiren a xestión directa da cola de espera. Os parches co controlador ntsync aínda teñen o estado RFC, é dicir. foron postos en discusión e revisión pola comunidade, pero aínda non son aptos para a súa adopción no núcleo principal de Linux.

Fonte: opennet.ru

Engadir un comentario