Wydanie emulatora FEX 2412, umożliwiającego uruchamianie programów x86 na systemach ARM64.

Wydano wydanie projektu FEX 2412, rozwijającego emulator do uruchamiania gier i aplikacji zbudowanych dla architektur x86 i x86-64 w środowisku Linux na systemach z procesorami ARM64 (AArch64). Między innymi, emulator FEX jest używany przez projekt Asahi do uruchamiania w środowiskach Linux działających na systemach z chipami ARM Apple Silicon, gier z katalogu Steam, zbudowanych dla architektury x86_64. Kod projektu napisany jest w języku C++ z wstawkami assemblerowymi i rozpowszechniany na licencji MIT.

Biblioteki potrzebne do uruchomienia aplikacji x86 w środowisku ARM64 są dołączane w formie warstwy overlay z obrazem głównego systemu plików (rootfs), dostarczanym w formacie squashfs. Taka warstwa pozwala na obejście potrzeby tworzenia oddzielnego środowiska chroot. Ładowanie wcześniej przygotowanych przez projekt obrazów rootfs odbywa się za pomocą specjalnie przygotowanego narzędzia FEXRootFSFetcher.

Aby zorganizować dostęp do określonych funkcji środowiska gospodarza, takich jak narzędzia do pracy z dźwiękiem i grafiką 3D, w rootfs umieszczane są specjalne biblioteki thunk, które tłumaczą wywołania do bibliotek i kodu po stronie systemu gospodarza (na przykład, wywołania do OpenGL i Vulkan mogą być przekierowywane). Takie biblioteki mogą być także używane po stronie gospodarza do odwoływania się do kodu w środowisku gościa. Wśród dostępnych do przekazywania bibliotek znajdują się: libEGL, libGL, libSDL2, libX11, libVDSO, libasound, libdrm, libfex_malloc, libvulkan, libwayland-client i libxshmfence.

Wśród zmian w nowej wersji zauważono rozwiązanie problemów z uruchamianiem klienta Steam, przeniesienie emulacji instrukcji x86 PAUSE na użycie instrukcji ARM WFE zamiast YIELD, zapewnienie emulacji wywołań systemowych potrzebnych do pracy z kontrolerami, poprawę emulacji CPUID i RDTSCP, restrukturyzację FEXCore (backend emulacji CPU) oraz usunięcie usterek w emulacji rozszerzeń AVX.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster