Lansarea emulatorului FEX 2508, care permite rularea aplicațiilor x86 pe sisteme ARM64.

A fost publicat release-ul proiectului FEX 2508, care dezvoltă emulatorul pentru a rula jocuri și aplicații compilate pentru arhitecturile x86 și x86-64, în medii Linux pe sisteme cu procesoare ARM64 (AArch64). Emulatorul FEX este utilizat de proiectul Asahi pentru a rula pe sisteme cu cipuri ARM Apple Silicon jocuri din catalogul Steam, compilate pentru arhitectura x86_64. Codul proiectului este scris în C++ cu inserții de asamblare și este distribuit sub licența MIT.

Bibliotecile necesare pentru rularea aplicațiilor x86 în medii ARM64 sunt conectate sub formă de overlay, cu imaginea sistemului de fișiere rădăcină (rootfs) livrată în format SquashFS. Această ofertă permite evitarea creării unui mediu chroot separat. Încărcarea imaginilor rootfs deja formate de proiect se face cu utilitarul FEXRootFSFetcher.

Pentru accesul la funcționalitățile mediu-gazdă, cum ar fi instrumentele pentru lucrul cu sunetul și grafică 3D, în rootfs sunt incluse biblioteci thunk, care traduc apelurile către biblioteci și cod pe partea gazdei (de exemplu, pot redirecționa apeluri către OpenGL și Vulkan). Aceste biblioteci pot fi, de asemenea, folosite și pe partea gazdă pentru a accesa cod în mediu-gazdă. Printre bibliotecile disponibile pentru redirecționare se numără: libEGL, libGL, libSDL2, libX11, libVDSO, libasound, libdrm, libfex_malloc, libvulkan, libwayland-client și libxshmfence.

În noua versiune:

  • A fost realizată o optimizare semnificativă a compilatorului JIT, permitând creșterea FPS-ului în jocul Cyberpunk 2077 cu 38.9%, Doom 2016 cu 30.9%, Stray cu 25.2%, Grim Fandango Remastered cu 24.7%, Teardown cu 12.6% și Gold of War 2018 cu 4.6%. Cele mai mari îmbunătățiri au fost aduse optimizărilor stivei de apeluri și retururi (call-return), precum și utilizării modelului de memorie wow64/arm64ec TSO (Total Store Ordering), suportat în CPU Apple Silicon.
    Lansarea emulatorului FEX 2508, care permite rularea aplicațiilor x86 pe sisteme ARM64.
  • A fost implementat suportul pentru bitul NX (No Execute) pentru a interzice executarea instrucțiunilor în zonele de memorie care nu sunt marcate special ca permise pentru execuție.
  • A fost îmbunătățit suportul pentru codul utilizat pentru a preveni depanarea și modificarea fluxului de execuție în jocuri, cum ar fi Peggle Deluxe și Crysis 2: Maximum Edition.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster