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.

- 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

