Nouvelles versions de Wine 9.2 et Winlator 5.0. Un pilote ntsync a été proposé pour le noyau Linux

Une version expérimentale d'une implémentation ouverte de l'API Win32 - Wine 9.2 - a eu lieu. Depuis la sortie de la version 9.1, 14 rapports de bogues ont été clôturés et 213 modifications ont été apportées.

Les changements les plus importants :

  • Le moteur Wine Mono avec l'implémentation de la plateforme .NET a été mis à jour vers la version 9.0.0.
  • Prise en charge améliorée de la barre d'état système.
  • La gestion des exceptions a été améliorée sur les plateformes ARM.
  • La build utilise la macro YEAR2038 pour utiliser le type time_t 64 bits.
  • Le pilote winewayland.drv a amélioré la gestion du curseur.
  • Les rapports d'erreurs liés au fonctionnement des jeux sont fermés : Elite Dangerous, Epic Games Launcher 15.21.0, LANCommander, Kodu.
  • Rapports d'erreurs fermés liés au fonctionnement des applications : Quick3270 5.21, digikam, Dolphin Emulator, Windows Sysinternals Process Explorer 17.05, programme d'installation de Microsoft Webview 2.

De plus, l'application Android Winlator 5.0 a été publiée, fournissant un cadre pour les émulateurs Wine et Box86/Box64 pour exécuter des applications Windows sur la plate-forme Android. Winlator déploie des environnements Linux basés sur Ubuntu avec Mesa3D, DXVK, D8VK et CNC DDraw, dans lesquels les applications Windows conçues pour l'architecture x86 sont exécutées sur des appareils ARM Android à l'aide d'un émulateur et de Wine. La nouvelle version améliore le gestionnaire de tâches, améliore les performances, ajoute la prise en charge des thèmes changeants et améliore la compatibilité avec XInput.

On peut également noter la publication sur la liste de diffusion du noyau Linux du pilote ntsync, qui implémente le périphérique de caractères /dev/ntsync et un ensemble de primitives de synchronisation utilisées dans le noyau Windows NT. L'implémentation de telles primitives au niveau du noyau peut améliorer considérablement les performances des jeux Windows lancés avec Wine. Par exemple, lors de l'utilisation du pilote ntsync, par rapport à l'implémentation des primitives de synchronisation NT dans l'espace utilisateur, le FPS maximum dans le jeu Dirt 3 a augmenté de 678 %, dans le jeu Resident Evil 2 - de 196 %, Tiny Tina's Wonderlands - de 177 % , Lara Croft : Temple d'Osiris - de 131 %, Call of Juarez - de 125 %, The Crew - de 96 %, Forza Horizon 5 - de 48 %, Anger Foot - de 43 %.

Des gains de performances significatifs sont obtenus en éliminant la surcharge associée à l'exécution de RPC dans l'espace utilisateur. La création d'un pilote distinct pour le noyau Linux s'explique par la difficulté d'implémenter correctement l'API de synchronisation NT au-dessus des primitives existantes dans le noyau, par exemple l'opération NtPulseEvent() et le mode « attendre tout » dans NtWaitForMultipleObjects( ) nécessitent une gestion directe de la file d'attente. Les correctifs avec le pilote ntsync ont toujours le statut RFC, c'est-à-dire ont été soumis à discussion et à examen par la communauté, mais ne sont pas encore éligibles pour être adoptés dans le noyau Linux principal.

Source: opennet.ru

Ajouter un commentaire