Release of the FEX 2508 emulator, allowing x86 programs to run on ARM64 systems

Megjelent a FEX 2508 projekt, amely az x86 és x86-64 architektúrára készült játékok és alkalmazások futtatására szolgáló emulátort fejleszti ARM64 (AArch64) processzorral rendelkező Linux-környezetekben. A FEX emulátor az Asahi projekt által használva van, hogy az Apple Silicon ARM chipjeire készült x86_64 architektúrára épülő Steam játékokat futtathasson. A projekt kódja C++ nyelven, assembler betétekkel készült, és MIT licenc alatt terjesztik.

Az ARM64 környezetben futó x86 alkalmazásokhoz szükséges könyvtárak overlay réteg formájában kapcsolódnak a gyökér fájlrendszer (rootfs) képével, amely SquashFS formátumban érkezik. Az ilyen réteg lehetővé teszi, hogy ne kelljen külön chroot környezetet létrehozni. A projekt által kialakított rootfs képek betöltése a FEXRootFSFetcher segédprogram által történik.

A gazda környezet lehetőségeihez való hozzáférés érdekében, mint például a hang- és 3D grafikai eszközök, a rootfs-be thunk könyvtárakat helyeznek el, amelyek áttranszlációs hívásokat végeznek a gazda rendszer könyvtáraira és kódjaira (például az OpenGL és Vulkan hívások átirányítása lehetséges). Ezek a könyvtárak a gazda oldalán is használhatóak a vendég környezet kódjához való hívásokhoz. Az átjárható könyvtárak között megtalálható: libEGL, libGL, libSDL2, libX11, libVDSO, libasound, libdrm, libfex_malloc, libvulkan, libwayland-client és libxshmfence.

Az új verzióban:

  • Jelentős optimalizációt végeztek a JIT fordítón, aminek köszönhetően a Cyberpunk 2077 játék FPS-e 38,9%-kal, a Doom 2016 30,9%-kal, a Stray 25,2%-kal, a Grim Fandango Remastered 24,7%-kal, a Teardown 12,6%-kal, a God of War 2018 pedig 4,6%-kal növekedett. A legnagyobb hatást a hívási és visszatérési (call-return) verem optimalizálásai, valamint a wow64/arm64ec könyvtárában alkalmazott TSO (Total Store Ordering) memória modell bevezetése gyakorolta, amelyet az Apple Silicon CPU támogat.
    Release of the FEX 2508 emulator, allowing x86 programs to run on ARM64 systems
  • Megvalósult az NX bit (No Execute) támogatása, amely megakadályozza a kódvégrehajtást azokon a memóriaterületeken, amelyeket kifejezetten nem jelöltek ki végrehajtásra.
  • Javították a kód támogatását, amely a játékok, például Peggle Deluxe és Crysis 2: Maximum Edition, hibakeresésének és a végrehajtás menetében történő változtatásnak a megakadályozására szolgál.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster