Wine 10.0 переносит приложения Arm Windows в Linux, но по-прежнему не является эмулятором

Проект Wine с открытым исходным кодом, часто называемый WINE (аббревиатура Wine Is Not An Emulator), приобрел значение для организаций и пользователей, которые стремятся использовать приложения и игры Windows в таких системах, как Linux или macOS. Такое программное обеспечение, как CrossOver для Mac и Windows, Apple Game Porting Toolkit и проект Proton, лежащий в основе SteamOS и Steam Deck от Valve, обязаны своим происхождением Wine. В последние годы повышенное внимание и инвестиции в проект привели к существенному повышению его совместимости и полезности.

Вчера команда Wine объявила о выпуске версии 10.0, ознаменовав следующее значительное обновление уровня совместимости без эмулятора. Главной особенностью этого обновления является включение поддержки ARM64EC, которая относится к двоичному интерфейсу приложений (ABI), используемому для приложений Arm в Windows 11. Однако в деталях выпуска упоминается, что обновление включает в себя более 6000 отдельных улучшений, появившихся в результате годового обновления. стоит опытно-конструкторская работа.

Проще говоря, ARM64EC позволяет разработчикам комбинировать программное обеспечение, совместимое с Arm и x86. Это означает, что если вы создаете версию своего приложения на базе Arm, вы все равно можете использовать менее распространенные надстройки или плагины x86 без необходимости немедленного полного преобразования. Аналогичным образом, Wine 10.0 поддерживает ARM64X, особый тип двоичных файлов, который позволяет одновременно использовать как новый код ARM64EC, так и более старое программное обеспечение ARM64, предшествующее Windows 11.

Поддержка ARM64EC в Wine имеет ограничение, которое может помешать его работе в некоторых известных дистрибутивах Arm Linux без изменений: как указано в примечаниях к выпуску, для этого требуется размер системной страницы 4 КБ, что соответствует спецификациям Windows ABI. Примечательно, что многие популярные системы на базе Arm Linux по умолчанию используют размер страницы 16 КБ из-за потенциального повышения производительности. Когда размеры страниц меньше, их требуется больше, что приводит к увеличению нагрузки на ЦП в результате управления большим количеством страниц.

Дистрибутив под названием Asahi Linux, построенный на базе Fedora и призванный обеспечить совместимость Linux с компьютерами Apple Silicon Mac, использует размер страницы 16 КБ, поскольку именно его в настоящее время поддерживают процессоры Apple. Аналогичным образом, в некоторых вариантах ОС Raspberry Pi по умолчанию используется размер страницы 16 КБ, хотя в целях совместимости его можно настроить до 4 КБ. Поскольку Asahi Linux и проект Raspberry Pi являются яркими примерами Linux на системах Arm, это ограничение поддержки ARM64EC в Wine может несколько снизить его привлекательность. Однако, как продемонстрировал Proton и другие успешные уровни совместимости на основе Wine, создание фундамента сейчас может привести к существенным преимуществам в будущем.

В Wine 10.0 есть несколько новых улучшений. Например, теперь он обеспечивает превосходную совместимость с экранами с высоким разрешением, что упрощает автоматическую настройку размеров окон для приложений, которые не оптимизированы для дисплеев с высоким разрешением. Кроме того, был представлен апплет панели управления рабочим столом, позволяющий пользователям настраивать параметры виртуального дисплея, используемые приложениями, работающими на Wine. Кроме того, были внесены улучшения в поддержку различных функций Direct3D, а рендерер Vulkan претерпел обновления, направленные на минимизацию зависаний во время игры.

Окна на руке: теперь это реальность!

Несмотря на то, что операционные системы Windows работают на процессорах Arm уже более десяти лет, только в прошлом году проект завоевал доверие как жизнеспособная платформа для массовых вычислений.

Прошлым летом Qualcomm представила свои процессоры Snapdragon X Elite и X Plus, способные по производительности и энергоэффективности соответствовать процессорам Intel, AMD и Apple для ноутбуков. Вместо того, чтобы использовать эти чипы для второстепенных проектов, таких как Surface Pro X, как это делала Microsoft в прошлом, они были интегрированы в основные, широко доступные версии планшета Surface Pro и ноутбука Surface. Кроме того, Microsoft анонсировала программу «Copilot+ PC», которая демонстрирует ПК на базе Snapdragon от большинства ведущих производителей ПК.

Как исследователь, я заметил выпуск обновления Microsoft Windows 11 24H2, которое на первый взгляд кажется типичным ежегодным обновлением. Однако при ближайшем рассмотрении оказывается, что это обновление включает в себя существенные улучшения, в частности нацеленные на обновление компилятора, ядра и планировщика Windows. Эти улучшения призваны повысить производительность не только чипов Arm, но и некоторых чипов x86.

Более того, Microsoft обновила и переименовала свою функцию перевода кода с x86 на Arm, теперь известную как «Призма». Согласно заявлению компании, ожидается, что Prism будет запускать x86-приложения примерно на 10-20% быстрее по сравнению с их производительностью в более ранних версиях Windows на том же оборудовании.

Как аналитик, теперь я могу поделиться некоторыми интересными разработками, касающимися версий Windows для Arm. Примечательно, что компания успешно убедила значительное количество ключевых разработчиков приложений запустить собственные версии своих приложений на этих платформах. Сюда входят популярные браузеры, такие как Google Chrome, инструменты для творчества, такие как Adobe Photoshop и Affinity Photo, а также приложения для повышения производительности, такие как Dropbox и Google Drive. Основной мотивацией внимания проекта Wine к поддержке ARM64EC является растущая актуальность экосистемы приложений Windows-on-Arm.

Смотрите также

2025-01-23 01:55