ΠΡΡΠ½Π°Ρ Π΅ ΠΏΡΠΎΠ΅ΠΊΡ FEX 2508, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·Π²ΠΈΠ²Π° Π΅ΠΌΡΠ»ΡΡΠΎΡ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ³ΡΠΈ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΡΠ±ΡΠ°Π½ΠΈ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈΡΠ΅ x86 ΠΈ x86-64, Π² Linux ΡΡΠ΅Π΄ΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Ρ ARM64 (AArch64) ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ. ΠΠΌΡΠ»ΡΡΠΎΡΡΡ FEX ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Asahi Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ³ΡΠΈ ΠΎΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Steam, ΡΡΠ±ΡΠ°Π½ΠΈ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° x86_64, Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Ρ ARM ΡΠΈΠΏΠΎΠ²Π΅ Apple Silicon. ΠΠΎΠ΄ΡΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C++ Ρ Π°ΡΠ΅ΠΌΠ±Π»Π΅ΡΠΈ ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ MIT Π»ΠΈΡΠ΅Π½Π·.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° x86 ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ARM64 ΡΡΠ΅Π΄Π°, ΡΠ΅ ΡΠ²ΡΡΠ·Π²Π°Ρ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° overlay ΡΠ»ΠΎΠΉ Ρ ΠΎΠ±ΡΠ°Π· Π½Π° ΠΊΠΎΡΠ΅Π½ΠΎΠ²Π°ΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ²Π° ΡΠΈΡΡΠ΅ΠΌΠ° (rootfs), ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π° Π² ΡΠΎΡΠΌΠ°Ρ SquashFS. Π’ΠΎΠ·ΠΈ ΡΠ»ΠΎΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡΠ° ΠΎΡ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΎΡΠ΄Π΅Π»Π½Π° chroot ΡΡΠ΅Π΄Π°. ΠΠ°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π²Π΅ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΠ°Π½ΠΈΡΠ΅ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΎΠ±ΡΠ°Π·ΠΈ rootfs ΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° ΡΡΠ΅Π· ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° FEXRootFSFetcher.
ΠΠ° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° Ρ ΠΎΡΡ ΡΡΠ΅Π΄Π°ΡΠ°, ΠΊΠ°ΡΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° ΡΡΡ Π·Π²ΡΠΊ ΠΈ 3D Π³ΡΠ°ΡΠΈΠΊΠ°, Π² rootfs ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΡ thunk Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠ°Ρ ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ ΠΊΡΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈ ΠΊΠΎΠ΄ Π½Π° ΡΡΡΠ°Π½Π°ΡΠ° Π½Π° Ρ ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½ΠΈ ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ ΠΊΡΠΌ OpenGL ΠΈ Vulkan). Π’Π΅Π·ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΡΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΈ Π½Π° ΡΡΡΠ°Π½Π°ΡΠ° Π½Π° Ρ ΠΎΡΡΠ° Π·Π° ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ ΠΊΡΠΌ ΠΊΠΎΠ΄Π° Π² Π³ΠΎΡΡΡΠ²Π°ΡΠ°ΡΠ° ΡΡΠ΅Π΄Π°. Π‘ΡΠ΅Π΄ Π½Π°Π»ΠΈΡΠ½ΠΈΡΠ΅ Π·Π° ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠ°: libEGL, libGL, libSDL2, libX11, libVDSO, libasound, libdrm, libfex_malloc, libvulkan, libwayland-client ΠΈ libxshmfence.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- ΠΡΠΎΠ²Π΅Π΄Π΅Π½ΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, ΠΊΠΎΠ΅ΡΠΎ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° FPS Π² ΠΈΠ³ΡΠ°ΡΠ° Cyberpunk 2077 Ρ 38.9%, Doom 2016 β Ρ 30.9%, Stray β Ρ 25.2%, Grim Fandango Remastered β Ρ 24.7%, Teardown β Ρ 12.6%, ΠΈ Gold of War 2018 β Ρ 4.6%. ΠΠ°ΠΉ-Π²Π»ΠΈΡΡΠ΅Π»Π½ΠΎ ΡΠ΅ ΠΎΠΊΠ°Π·Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ΅ΠΊΠ° Π·Π° ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ ΠΈ Π²ΡΡΡΠ°Π½ΠΈΡ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° TSO (Total Store Ordering) Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ wow64/arm64ec, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΎ ΠΎΡ CPU Apple Silicon.

- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° NX Π±ΠΈΡ (No Execute) Π·Π° Π·Π°Π±ΡΠ°Π½Π° Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ Π½Π΅ΠΈΠ·Π±Π΅Π»ΡΠ·Π°Π½ΠΈ ΠΊΠ°ΡΠΎ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΈ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅.
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΊΠΎΠ΄, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° Ρ ΠΎΠ΄Π° Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π² ΠΈΠ³ΡΠΈ, ΠΊΠ°ΡΠΎ Peggle Deluxe ΠΈ Crysis 2: Maximum Edition.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru

