Box64 0.4.4

2 августа 2026 года состоялся выпуск Box64 0.4.4 — свободного эмулятора, позволяющего запускать программы и игры Linux для архитектуры x86–64 на системах ARM64, RISC-V и LoongArch64. Проект использует динамическую трансляцию машинного кода и по возможности обращается к нативным системным библиотекам, включая libc, SDL, OpenGL и Vulkan. Исходный код распространяется под лицензией MIT.
Основным пользовательским новшеством стал графический конфигуратор box64-configurator, написанный на Python. Он позволяет создавать и изменять профили .box64rc для отдельных программ и игр, выбирать переменные Box64 и просматривать пояснения к ним без ручного редактирования конфигурационного файла. Интерфейс переведён на английский и китайский языки. Для KDE также подготовлен модуль, позволяющий открывать настройки Box64 из контекстного меню исполняемого файла.
Основные изменения Box64 0.4.4:
-
DynaCache включён по умолчанию. Сгенерированный динамическим транслятором нативный код сохраняется на диске, поэтому при последующих запусках программы часть кода не приходится создавать заново. Кеш хранится в
~/.cache/box64, сжимается при помощи zlib и по умолчанию может занимать до 2 Гбайт. Устаревшие записи автоматически удаляются при достижении установленного ограничения. Управлять размером кеша или полностью отключить его можно через специальный глобальный профиль[*]вbox64-configurator. (описание) -
Ускорен бэкенд LoongArch64. Разработчики добавили более быстрые пути выполнения для ряда инструкций, расширили объединение операций и обработку флагов, оптимизировали AES-инструкции и сократили количество лишних операций при расширении 32-разрядных значений до 64 разрядов. Поддержка AVX на LoongArch64 теперь включена по умолчанию. (полный список изменений)
-
Продолжена разработка динамического транслятора для RISC-V. Реализованы дополнительные инструкции, исправлена обработка NaN и флагов процессора, улучшено использование нативных флагов. Box64 научился определять и применять расширения RISC-V Zicbop, Zicond и Zicbom, если они поддерживаются процессором.
-
Общие оптимизации динамической трансляции. Значение
BOX64_DYNAREC_CALLRET=2теперь используется по умолчанию на всех основных бэкендах. Этот режим оптимизирует вызовы функций и возвраты из них. Также переработаны таблица переходов, обработка внутренних переходов внутри динамически созданных блоков и работа с альтернативными адресами. -
Повышена точность эмуляции. Улучшена работа с 80-разрядными значениями x87, инструкциями сохранения и восстановления состояния процессора, флагом трассировки TF, сигналами и CPUID. По словам разработчиков, изменения позволяют запускать больше игр с DRM-защитой и исправляют проблемы в некоторых проектах Capcom и Sony. (объявление о выпуске)
-
Добавлены новые профили приложений. В комплект включены настройки для дополнительных программ и игр, в том числе Call of Duty 4, проводника Wine и Death Stranding 2. Исправлены существующие профили DOOM 2016 и Dave the Diver. Для систем с неоднородной конфигурацией big.LITTLE появилась переменная
BOX64_SKIPCPU, позволяющая не использовать указанное количество первых ядер процессора. -
Расширено оборачивание системных библиотек и функций. Добавлена поддержка дополнительных функций GnuTLS, Wayland, OpenGL, SDL, SQLite и других библиотек. Исправлены ошибки в мостах, связывающих функции x86–64 с нативными библиотеками хоста, включая возможность ошибочного повторного использования одного моста для функций с разными сигнатурами.
Box64 отличается от полной эмуляции компьютера тем, что не запускает отдельную гостевую операционную систему. Вместо этого он загружает исполняемый файл x86–64 непосредственно в Linux-среде хоста, переводит машинные инструкции и использует доступные нативные библиотеки. Согласно описанию проекта, применение динамической трансляции на ARM64, RISC-V и LoongArch64 может давать пятикратное или десятикратное ускорение по сравнению с интерпретатором.
Исходный код и архив Box64 0.4.4 доступны на странице выпуска в GitHub. В качестве основной ссылки к новости лучше использовать подробное объявление разработчика, содержащее описание DynaCache, конфигуратора и оптимизаций для поддерживаемых архитектур.
>>> Источник
