Когда на свет появился свежий релиз Hangover 10.0, это оказалось, скажем так, интересным шагом для тех, кто пытается подружить 32-битные Windows программы с системами на x86 (i386), ARM32 и, что вполне очевидно, архитектурами поновее, вроде ARM64 (Aarch64). К тому же, мало-помалу происходит работа над добавлением поддержки для RISC-V. Ну и давайте не забывать, что проект радует свободным доступом, ведь распространяется он по лицензии LGPL 2.1.
Объясняем, что же такое Hangover
По сути, Hangover – это, если можно так выразиться, своеобразный инструмент, который явно вдохновлялся другими прибамбасами из мира эмуляции, ну типа Wine. Его задача – это, грубо говоря, брать тот самый x86-код Windows программ и как-то превращать его в понятный код для другой платформы. На первый взгляд кажется, что все довольно просто, хотя за кулисами работы этого решения скрывается достаточно лихая трансформация, включающая упрощенную интерпретацию идей, лежащих в основе Wine. Только вот тут все это подшлифовано так, чтобы ладить с ARM64 и еще кое-какими современными штуками. По большому счету, это «облегченный» вариант, сильно отличающийся от классического подхода в Wine, особенно если вспомнить про привязанность работы к 32-битным приложениям.
Ну а для достижения своих целей Hangover, в некотором смысле, «общается» с такими проектами, как QEMU, FEX и Box64. Есть еще кое-что интересное на горизонте – возможное объединение со схожими разработками, например с проектом Blink, который двигался примерно в том же направлении.
Что нового придумали для версии 10.0
- Вот, например, взято все самое вкусное из последних обновлений Wine 10, и, по всей видимости, это значительно улучшило совместимость с некоторыми «свежими» программами.
- Появилась поддержка ARM64EC (ну, это такая вещь, которая позволяет запускать код ARM64 вместе с x86_64 операциями).
- Для тех, кто, скажем так, работает на Linux, добавили поддержку новых выпусков: Debian 13 (testing) и Ubuntu 20.04, 22.04, 24.04, а еще 24.10. При этом старые версии, вроде Debian 11 и 12, пока еще держатся, хотя не без «подвисаний».
- Для ARM64 и ARM64EC в некотором роде сделали приятный апгрейд – добавили поддержку DXVK, который переводит Direct3D (версии 8–11) на Vulkan. Словно бы дали вторую жизнь графике!
- Дополнительно интегрировали совместимость с fex-emu-wine. Это, между прочим, вещь, которая очень неплохо подстраивается под ARM64 требования. Последние доработки FEX положили к этому делу с улучшениями из сборки 2412.
Итак, в основном Hangover продолжает свое «упрощенное» существование с идеей стать чем-то легким и понятным для запуска Windows-программ на всяких разных архитектурах. Правда, говоря откровенно, это «легкое» решение на фоне других способов запуска еще продолжает находить свои границы и возможности!