Vydání emulátoru Box64 0.3.0, který umožňuje spouštění x86 her na systémech ARM64 a RISC-V

Bylo zveřejněno vydání emulátoru Box64 0.3.0, určeného k provozu Linuxových programů sestavených pro architekturu x86_64 na zařízeních s procesory ARM64, RISC-V a Loongarch64. Projekt se zaměřuje na umožnění spuštění herních aplikací a poskytuje možnost spouštět Windows sestavení pomocí wine a Proton. Zdrojové kódy projektu jsou napsány v jazyce C a jsou distribuovány pod licencí MIT.

Charakteristika projektu spočívá v použití hybridního modelu vykonávání, při kterém se emulace aplikuje pouze na strojový kód aplikace a specifických knihovnách. Standardní systémové knihovny, včetně libc, libm, GTK, SDL, Vulkan a OpenGL, jsou nahrazovány varianty nativními pro cílové platformy. Tímto způsobem se knihovní volání vykonávají bez emulace, což umožňuje dosáhnout značného zvýšení výkonu.

Emulace kódu, pro který nejsou k dispozici nativní nahrazení pro cílovou platformu, se provádí pomocí techniky dynamické překompilace (DynaRec) z jednoho souboru strojových instrukcí na jiný. V porovnání s interpretací strojových instrukcí dynamická překompilace prokazuje 5-10x vyšší výkon.

V nové verzi:

  • Byla implementována podpora procesorových rozšíření AVX, AVX2, BMI1, BMI2, ADX, FMA, F16C a RDRAND.
  • Byla přidána proměnná prostředí BOX64_AVX, kde nastavení 1 zapíná podporu AVX, BMI1, F16C a VAES, a 2 zapíná AVX2, BMI2, FMA, ADX, VPCLMULQDQ a RDRAND.
  • Byla přidána podpora dynamické překompilace (DynaRec) AVX, AVX2 a podobných instrukcí na základě instrukcí NEON, které jsou poskytovány v CPU založeném na architektuře ARM64.
  • Byla přidána počáteční podpora překompilace instrukcí SIMD na instrukce RVV na systémech RISC-V.
  • Byla provedena optimalizace mechanismu DynaRec, přidána podpora nových opcode pro RISC-V a Loongarch64.
  • Byl aktualizován seznam opcode CPUID, místo Pentium IV je nyní ve výchozím nastavení CPUID vydáváno CPU série Haswell.
  • Byla přidána podpora Wayland a byla poskytnuta možnost dynamické překompilace knihoven souvisejících s Wayland, což umožnilo dosažení kompatibility s Wine-wayland.
  • Rozšířený počet podporovaných her, například byla přidána kompatibilita s hrou Death Stranding. Zajištěno určení použití knihovny UnityPlayer.dll v aplikacích spouštěných v Wine a automatické nastavení parametru BOX64_DYNAREC_STRONGMEM=1.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster