Новите версии на Box86 и Box64 вече са пуснати

наскоро освобождаването на новите версии на Емулатори Box86 0.2.6 и Box64 0.1.8. Проектите се разработват синхронно от един и същ екип за разработка.

Box86 е ограничен до стартиране на 86-битови x32 приложения (като игри) на Linux системи, различни от x86, като ARM (хост системата трябва да е 32-битова с малък байт). Следователно, за стартиране и компилиране на Box32 е необходима 86-битова подсистема. Box86 е безполезен само за 64-битови системи. Освен това имате нужда от 32-битова верига от инструменти, за да компилирате Box86.

Тъй като Box86 използва собствените версии на някои „системни“ библиотеки, като libc, libm, SDL и OpenGL, той е лесен за интегриране и използване с повечето приложения, а производителността може да бъде изненадващо висока в много случаи.

Същото важи и за Box64, само че такова и позволява стартирайте 64-битови изпълними файлове. Проектът обръща голямо внимание на организацията на пускането на приложения за игри, включително възможността за пускане на компилации на Windows чрез Wine и Proton.

Характеристика на проекта е използването на хибриден модел на изпълнение, в който емулацията се прилага само към машинния код на самото приложение и конкретни библиотеки. Общите системни библиотеки, включително libc, libm, GTK, SDL, Vulkan и OpenGL, се заменят с естествени варианти на целевите платформи. Следователно извикванията на библиотеката се изпълняват без емулация, което позволява значително увеличение на производителността.

Емулиращ код, който няма собствени замениs за целевата платформа се извършва с помощта на техниката на динамично прекомпилиране (DynaRec) от един набор машинни инструкции към друг. В сравнение с тълкуването на машинни инструкции, динамичното прекомпилиране показва 5 до 10 пъти по-добра производителност.

в тестове за производителност, когато работи на платформите Armhf и Aarch64, Емулаторите Box86 и Box64 значително превъзхождат QEMU и FEX-emu проекти и в някои тестове (glmark2, openarena) те постигнаха производителност, идентична с стартирането на сглобка, роден за целевата платформа.

По отношение на съвместимостта на заявленията, dОт 165 тествани игри, приблизително 70% са били успешни. Около 10% повече работа, но с определени резерви и ограничения.

От игрите, с които се отбелязват проблеми, се споменават игри, базирани на двигателя Unity3D, който е обвързан с пакета Mono, чиято емулация все още не винаги работи поради JIT компилацията, използвана в Mono, а също така има доста високи графики, изисквания това не винаги може да се постигне на ARM дъски. Подмяната на библиотеките с приложения на GTK в момента е ограничена до GTK2 (замяната на GTK3/4 не е напълно внедрена).

Що се отнася до основни промени в новите издания, се подчертава следното:

  • Добавена връзка към библиотеката Vulkan. Добавена поддръжка на Vulkan и DXVK графичен API (внедряване на DXGI, Direct3D 9, 10 и 11 над Vulkan).
  • Подобрени връзки за GTK библиотеки. Добавени връзки за gstreamer и библиотеки, които обикновено се използват в GTK приложения.
  • Добавена първоначална поддръжка (засега само режим на интерпретиране) за RISC-V и PPC64LE архитектури.
  • Направени са корекции на грешки, за да се подобри съвместимостта със SteamPlay и Proton Layer. Възможно е да стартирате много Linux и Windows игри от Steam на дъски AArch64 като Raspberry Pi 3 и 4.
  • Подобрено управление на паметта, поведение на mmap и наблюдение за нарушения на защитата на паметта.
  • Подобрена поддръжка за системното извикване за клониране в libc. Добавена поддръжка за нови системни повиквания.
  • В двигателя за динамично прекомпилиране е подобрена работата с SSE/x87 регистри, добавена е поддръжка за нови машинни кодове, оптимизирани са float и двойни преобразувания, подобрена е вътрешната обработка на клонове, опростена поддръжка за нови архитектури.
  • Подобрен зареждане на ELF файлове.

И накрая, ако се интересувате да научите повече за него, можете да се консултирате с подробностите В следващия линк.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.