Nastąpiło eksperymentalne wydanie otwartej implementacji API Win32 - Wine 9.2. Od wydania wersji 9.1 zamknięto 14 raportów o błędach i wprowadzono 213 zmian.
Najważniejsze zmiany:
- Silnik Wine Mono z implementacją platformy .NET został zaktualizowany do wersji 9.0.0.
- Ulepszona obsługa zasobnika systemowego.
- Ulepszono obsługę wyjątków na platformach ARM.
- W kompilacji zastosowano makro YEAR2038, aby użyć 64-bitowego typu time_t.
- W sterowniku winewayland.drv poprawiono obsługę kursora.
- Zamknięte są raporty o błędach związanych z działaniem gier: Elite Dangerous, Epic Games Launcher 15.21.0, LANCommander, Kodu.
- Zamknięte zgłoszenia błędów związanych z działaniem aplikacji: Quick3270 5.21, digikam, Dolphin Emulator, Windows Sysinternals Process Explorer 17.05, instalator Microsoft Webview 2.
Ponadto opublikowano komunikat Android- Aplikacja Winlator 5.0, która zapewnia wrapper dla emulatorów Wine i Box86/Box64 do uruchamiania Windows-aplikacje na platformie AndroidWinlator się rozwija Linux-środowiska na bazie Ubuntu z Mesa3D, DXVK, D8VK i CNC DDraw, w którym za pomocą emulatora i Wine na urządzeniach ARM z Android wykonywane Windows– aplikacje stworzone dla architektury x86. Nowa wersja oferuje ulepszone zarządzanie zadaniami, zwiększoną wydajność, dodane wsparcie dla zmian motywów oraz lepszą kompatybilność z XInput.
Możesz również oznaczyć publikację na liście mailingowej jądra Linux sterownik ntsync, który implementuje urządzenie znakowe /dev/ntsync i zestaw prymitywów synchronizacji używanych w jądrze Windows NT. Implementacja takich prymitywów na poziomie jądra może znacząco poprawić wydajność. Windows- gry uruchomione za pomocą Wine. Na przykład, korzystając ze sterownika ntsync, w porównaniu z implementacją prymitywów synchronizacji NT w przestrzeni użytkownika, maksymalna liczba klatek na sekundę (FPS) w Dirt 3 wzrosła o 678%, w Resident Evil 2 o 196%, Tiny Tina's Wonderlands o 177%, Lara Croft: Temple of Osiris o 131%, Call of Juarez o 125%, The Crew o 96%, Forza Horizon 5 o 48% i Anger Foot o 43%.
Znaczny wzrost wydajności uzyskuje się poprzez wyeliminowanie narzutu związanego z korzystaniem z RPC w przestrzeni użytkownika. Utworzenie osobnego sterownika jądra Linux Wynika to z problematycznej natury poprawnej implementacji API synchronizacji NT na istniejących prymitywach jądra. Na przykład operacja NtPulseEvent() i tryb „wait-for-all” w NtWaitForMultipleObjects() wymagają bezpośredniego zarządzania kolejką oczekiwania. Poprawki ze sterownikiem ntsync mają obecnie status RFC, co oznacza, że są publikowane do dyskusji i recenzji przez społeczność, ale nie są jeszcze przeznaczone do wdrożenia w głównym jądrze. Linux.
Źródło: opennet.ru
