Състоя се експериментално издание на отворената реализация на Win32 API — Wine 9.2. От момента на пускането на 9.1 са затворени 14 отчета за грешки и са направени 213 промени.
Най-важните промени:
- Двигателят Wine Mono с реализация на платформата .NET е актуализиран до версия 9.0.0.
- Поддръжката на системния трей е подобрена.
- На платформите ARM е подобрена обработката на изключения.
- При компилирането е използван макрос YEAR2038 за използване на 64-битовия тип time_t.
- В драйвера winewayland.drv е подобрена работата с курсора.
- Затворени са отчети за грешки, свързани с игрите: Elite Dangerous, Epic Games Launcher 15.21.0, LANCommander, Kodu.
- Затворени са отчети за грешки, свързани с приложенията: Quick3270 5.21, digikam, Dolphin Emulator, Windows Sysinternals Process Explorer 17.05, Microsoft Webview 2 installer.
Освен това, е публикуван релиз на Android приложението Winlator 5.0, предоставящо обвивка над Wine и емулаторите Box86/Box64 за изпълнение на Windows приложения на платформата Android. Winlator разгръща Linux среди на база Ubuntu с Mesa3D, DXVK, D8VK и CNC DDraw, в които с помощта на емулатор и Wine на ARM устройства с Android се изпълняват Windows приложения, компилирани за архитектура x86. В новата версия е подобрена работата на мениджъра на задачи, повишена е производителността, добавена е поддръжка за смяна на темите и е подобрена съвместимостта с XInput.
Също така е отбелязана публикацията на списък за разпространение на ядрото на Linux на драйвера ntsync, реализиращ символно устройство /dev/ntsync и набор от примитиви за синхронизация, използвани в ядрото на Windows NT. Реализацията на подобни примитиви на ниво ядро позволява съществено повишаване на производителността на Windows игри, стартирани с помощта на Wine. Например, при използване на драйвера ntsync в сравнение с реализирането на примитиви за синхронизация NT в пространството на потребителя, максималният FPS в играта Dirt 3 се е увеличил с 678%, в играта Resident Evil 2 — с 196%, Tiny Tina’s Wonderlands — с 177%, Lara Croft: Temple of Osiris — с 131%, Call of Juarez — с 125%, The Crew — с 96%, Forza Horizon 5 — с 48%, Anger Foot — с 43%.
Значителен е напредъкът в производителността, постигнат благодарение на премахването на разходите, свързани с използването на RPC в потребителското пространство. Създаването на отделен драйвер за ядрото на Linux се обяснява с проблемността на правилната реализация на NT синхронизационния API върху съществуващите примитиви в ядрото, например операцията NtPulseEvent() и режимът "wait-for-all" в NtWaitForMultipleObjects() изискват пряко управление на опашката на очакване. Патчовете с драйвера ntsync в момента имат статут RFC, т.е. предоставени са за обсъждане и рецензиране в общността, но все още не претендират за приемане в основния състав на ядрото на Linux.
Източник: opennet.ru
