Релиз Wine 10.7 Beta — очередной двухнедельный выпуск открытого программного обеспечения, предназначенного для запуска приложений и игр Windows на платформах Linux и других операционных системах. Обновление включает значительные улучшения производительности, новые функции и исправления ошибок, что делает его важным шагом в развитии проекта.
Что нового в Wine 10.7
Оптимизация производительности с поддержкой User Fault FD
Ключевой особенностью Wine 10.7 стала поддержка User Fault FD (UFFD), направленная на повышение эффективности работы механизма write-watches. Эта технология позволяет значительно сократить время загрузки уровней в некоторых играх и улучшить общую производительность приложений. Разработкой данной функции занимался инженер компании CodeWeavers Пол Гофман.
В запросе на включение изменений Гофман подробно описал преимущества новой реализации:
Основная цель данного набора патчей — повышение производительности. Проблема была впервые замечена в игре Streets of Rage 4, где загрузка уровней занимала от 1 до 1,5 минут, в то время как на Windows этот процесс выполнялся практически мгновенно. Причиной низкой производительности являлись особенности работы механизма управления памятью и сборщика мусора в .Net Core. Значительное замедление вызывалось не только прямой разницей в скорости обработки памяти с отслеживанием записи, но и спецификой алгоритма, который использовал различные пулы памяти и стратегии, зависящие от времени доступа к памяти. Это приводило к особенно неудачному шаблону, при котором страницы памяти, защищенные для отслеживания записи, использовались гораздо чаще, чем обычно. Хотя с тех пор в игре или в используемой версии .Net Core произошли изменения, и разница во времени загрузки уровней стала менее выраженной, без данной оптимизации загрузка занимает 6–8 секунд, а с патчем — 1,5–2 секунды, что соответствует показателям Windows. Таким образом, патч обеспечивает значительный прирост производительности, особенно для приложений, использующих .Net Core.
Микро-бенчмарки, проведенные в рамках запроса на включение изменений, также демонстрируют положительное влияние новой реализации на производительность Wine.
Новые функции и исправления ошибок
Помимо оптимизации производительности, Wine 10.7 включает следующие улучшения:
-
Поддержка преобразования форматов Float в WindowsCodecs. Это расширяет возможности обработки графических данных в приложениях, работающих через Wine.
-
Доработка PDB-бэкенда. Улучшения в обработке отладочной информации повышают стабильность и совместимость приложений.
-
Исправление 14 известных ошибок. В их числе:
-
Устранение проблем с обработкой клавиатурного ввода в играх при использовании режима виртуального рабочего стола.
-
Исправления для приложений, таких как WinAmp и HeidiSQL, что повышает их стабильность и функциональность.
-
Обновление Wine 10.7 будет полезно пользователям Linux, macOS и других платформ, которые используют Wine для запуска Windows-приложений и игр. Особенно заметные улучшения ощутят те, кто работает с играми или приложениями, использующими .Net Core, благодаря значительному ускорению загрузки и обработки данных.
Linux: обзоры и обновления
• Обновление Wine 10.7: Быстрее загрузка игр и доработка PDB-бэкенда
• SteamOS 3.7.5 Preview улучшает поддержку Lenovo Legion Go S и устраняет ошибки
• Proton Experimental обновился на базе Proton 10 с исправлениями для Marvel Rivals, Oblivion Remastered и других игр на Steam Deck и Linux
• Ubuntu 25.10 Questing Quokka: Старт разработки перед Ubuntu 26.04 LTS
• Первая бета-версия Proton 10 доступна для тестирования: Значительные улучшения совместимости игр на Steam Deck и Linux
• Новая ОС «Альт Рабочая станция» 11.0 с GNOME 47.4 и обновленной KDE Plasma 6.3