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

The release of the FEX 2412 project, which develops an emulator for running games and applications compiled for x86 and x86-64 architectures in a Linux environment on ARM64 (AArch64) processor systems, has been presented. Among other things, the FEX emulator is used by the Asahi project to facilitate the running of Steam catalog games compiled for the x86_64 architecture in Linux environments operating on Apple Silicon ARM chips. The project's code is written in C++ with assembler inserts and is distributed under the MIT license.

The libraries necessary to run x86 applications in an ARM64 environment are connected as an overlay layer with a root filesystem (rootfs) image provided in squashfs format. Such a layer allows for the absence of a separate chroot environment. Loading already formed rootfs images prepared by the project is done by the specially developed utility FEXRootFSFetcher.

To organize access to certain features of the host environment, such as tools for working with sound and 3D graphics, special thunk libraries are placed in the rootfs, which translate calls to libraries and code on the host system side (for example, calls to OpenGL and Vulkan can be redirected). These libraries can also be used on the host side to access code in the guest environment. Available libraries for forwarding include: libEGL, libGL, libSDL2, libX11, libVDSO, libasound, libdrm, libfex_malloc, libvulkan, libwayland-client, and libxshmfence.

Notable changes in the new version include fixes for launching the Steam client, the translation of the x86 instruction PAUSE to use the ARM instruction WFE instead of YIELD, ensuring emulation of system calls necessary for working with gamepads, improving CPUID and RDTSCP emulation, restructuring FEXCore (the CPU emulation backend), and fixing shortcomings in emulating AVX extensions.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster