Новые версии Wine 9.2 и Winlator 5.0. Для ядра Linux предложен драйвер ntsync

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 2282
Зарегистрирован: 20.08.2022

#

Новые версии Wine 9.2 и Winlator 5.0. Для ядра Linux предложен драйвер ntsync
Дата публикации:Sat, 10 Feb 2024 10:38:46 +0300




Состоялся экспериментальный выпуск открытой реализации 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.



В новой версии Winlator улучшена работа менеджера задач, повышена производительность, добавлена поддержка смены тем оформления и улучшена совместимость с XInput. Кроме Winlator для запуска Windows-игр в Android развивается Android-приложение Cassia, которое обещают довести до готовности к публикации в этом году. В Cassia используется Wine, DXVK/VKD3D и эмулятор FEX .



Также можно отметить публикацию в списке рассылки ядра 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 объясняется проблематичностью корректной реализации API синхронизации NT поверх существующих примитивов в ядре, например, операция NtPulseEvent() и режим "wait-for-all" в NtWaitForMultipleObjects() требуют прямого управления очередью ожидания. Патчи с драйвером ntsync пока имеют статус RFC, т.е. выставлены для обсуждения и рецензирования сообществом, но пока не претендуют для принятия в основной состав ядра Linux.













Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=60583

Жизнь за Нер'зула!

Ответить