Utgivning av Box64 0.4.0, emulatort för att köra x86-spel pÄ ARM64-, RISC-V- och Loongarch64-system.

UtgÄvan av emulatorn Box64 0.4.0 har publicerats, som syftar till att köra Linux-program som Àr byggda för x86_64-arkitekturen pÄ hÄrdvara med ARM64-, RISC-V- och Loongarch64-processorer. Projektet lÀgger stor vikt vid att organisera körningen av spelapplikationer och erbjuder möjligheten att köra Windows-versioner genom Wine och Proton. Projektets kÀllkod Àr skriven i C och distribueras under MIT-licensen.

En sÀrskild funktion i projektet Àr tillÀmpningen av en hybridexekveringsmodell, dÀr emulering endast tillÀmpas pÄ maskinkoden för sjÀlva applikationen och specifika bibliotek. Standard systembibliotek, inklusive libc, libm, GTK, SDL, Vulkan och OpenGL, byts ut mot versioner som Àr inhemska för de mÄlplattformar. Dessutom utförs bibliotekanrop utan emulering, vilket möjliggör en betydande ökning av prestanda.

Emulering av kod för vilken det saknas inhemska ersÀttningar för mÄlplattformen utförs med hjÀlp av tekniken för dynamisk omkompilering (DynaRec) frÄn en uppsÀttning maskininstruktioner till en annan. JÀmfört med tolkning av maskininstruktioner visar dynamisk omkompilering en 5-10 gÄnger bÀttre prestanda. hög prestanda.

I den nya versionen:

  • En enhetlig dekodare för operationskodens prefixer (prefix opcode decoder) har presenterats, som anvĂ€nds i tolken och i alla backend för dynamisk omkompilering (DynaRec). Den nya dekodaren hanterar mer universellt sĂ€llsynta kombinationer av operationskodsprefixer och gör det möjligt att undvika specifika "hack" och kodduplicering i tolken och DynaRec-backend. Omarbetningen av dekodaren har lett till att överflödig kod har tagits bort, vilket förenklar underhĂ„llet av kodbasen och möjliggör att DynaRec kan arbeta med atypiska kombinationer av operationskodsprefixer.
  • Arbetet har pĂ„börjats med en mekanism för att ta bort kodblock frĂ„n minnet som har konverterats till nativ kod men som inte lĂ€ngre anvĂ€nds. En sĂ„dan optimering minskar minnesanvĂ€ndningen vid körning av applikationer som utför ett stort antal operationer vid start, som Steam och applikationer som anvĂ€nder libcef.
  • Stödet för ARM64-arkitekturen har förbĂ€ttrats: En byggprofil för CPU NVIDIA GB10 har implementerats. I backenden för dynamisk omkompilering (DynaRec) fortsĂ€tter implementeringen av tekniker för loopoptimering, som att ta ut operationer för registerinstĂ€llning av XMM/YMM ur loopens kropp.
  • Stabiliteten och prestandan för backend av dynamisk re-kompilering för RISC-V-arkitekturen har förbĂ€ttrats. Korrekt körning av Steam, Proton och Wine har garanterats, men för att arbeta med skyddat DRM-innehĂ„ll som krĂ€ver emulering av systemanrop frĂ„n Windows, behövs hĂ„rdvara som stöder 48-bit adressrymd (SV48) eller anvĂ€ndning av modifizierade versioner av Wine och Proton.
  • Utvecklingen av backend för Loongarch-arkitekturen har gjort betydande framsteg och nĂ„r nu en punkt dĂ€r Steam, Wine och Proton kan köras, men fungerar fortfarande sĂ€mre Ă€n backend för ARM64-system. För nĂ€rvarande krĂ€vs anvĂ€ndning av sidha i kĂ€rnan med 4K minnesstorlek (standard för Loongarch brukar sĂ€ttas till 16K). Prestandan Ă€r redan tillrĂ€cklig för att köra spel pĂ„ Loongarch 3A6000 CPU (2,5 GHz med 4 fysiska kĂ€rnor).
    Spela video
  • Stabiliteten i Box32-lĂ€get, som ger stöd för 32-bitars körbara filer i Box64, har förbĂ€ttrats. I detta lĂ€ge har stabiliteten för Steam ökat pĂ„ alla arkitekturer och möjligheten att anvĂ€nda in-game overlays i vissa OpenGL-spel.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster