ื’ืจืกืื•ืช ื—ื“ืฉื•ืช ืฉืœ ืืžื•ืœื˜ื•ืจ Box86 ื•-Box64, ื”ืžืืคืฉืจื•ืช ืœืš ืœื”ืจื™ืฅ ืžืฉื—ืงื™ x86 ืขืœ ืžืขืจื›ื•ืช ARM

ืคื•ืจืกืžื• ืžื”ื“ื•ืจื•ืช ืฉืœ ืืžื•ืœื˜ื•ืจื™ื Box86 0.2.6 ื•-Box64 0.1.8, ืฉื ื•ืขื“ื• ืœื”ืจื™ืฅ ืชื•ื›ื ื™ื•ืช ืœื™ื ื•ืงืก ืฉื”ื•ืจื›ื‘ื• ืขื‘ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช x86 ื•-x86_64 ืขืœ ืฆื™ื•ื“ ืขื ืžืขื‘ื“ื™ ARM, ARM64, PPC64LE ื•-RISC-V. ืคืจื•ื™ืงื˜ื™ื ืžืคื•ืชื—ื™ื ื‘ืื•ืคืŸ ืกื™ื ื›ืจื•ื ื™ ืขืœ ื™ื“ื™ ืฆื•ื•ืช ืžืคืชื— ืื—ื“ - Box86 ืžื•ื’ื‘ืœ ืœื™ื›ื•ืœืช ืœื”ืจื™ืฅ ื™ื™ืฉื•ืžื™ 32 ืกื™ื‘ื™ื•ืช x86, ื•-Box64 ืžืกืคืง ืืช ื”ื™ื›ื•ืœืช ืœื”ืคืขื™ืœ ืงื•ื‘ืฆื™ ื”ืคืขืœื” ืฉืœ 64 ืกื™ื‘ื™ื•ืช. ื”ืคืจื•ื™ืงื˜ ืžืงื“ื™ืฉ ืชืฉื•ืžืช ืœื‘ ืจื‘ื” ืœืืจื’ื•ืŸ ื”ื”ืฉืงื” ืฉืœ ื™ื™ืฉื•ืžื™ ืžืฉื—ืงื™ื, ื›ื•ืœืœ ืžืชืŸ ื”ื™ื›ื•ืœืช ืœื”ืฉื™ืง Windows builds ื‘ืืžืฆืขื•ืช ื™ื™ืŸ ื•ืคืจื•ื˜ื•ืŸ. ืงื•ื“ ื”ืžืงื•ืจ ืฉืœ ื”ืคืจื•ื™ืงื˜ ื›ืชื•ื‘ ื‘-C ื•ืžื•ืคืฅ (Box86, Box64) ืชื—ืช ืจื™ืฉื™ื•ืŸ MIT.

ืชื›ื•ื ื” ืฉืœ ื”ืคืจื•ื™ืงื˜ ื”ื™ื ื”ืฉื™ืžื•ืฉ ื‘ืžื•ื“ืœ ื‘ื™ืฆื•ืข ื”ื™ื‘ืจื™ื“ื™, ืฉื‘ื• ื”ืืžื•ืœืฆื™ื” ืžื•ื—ืœืช ืจืง ืขืœ ืงื•ื“ ื”ืžื›ื•ื ื” ืฉืœ ื”ืืคืœื™ืงืฆื™ื” ืขืฆืžื” ื•ืกืคืจื™ื•ืช ืกืคืฆื™ืคื™ื•ืช. ืกืคืจื™ื•ืช ืžืขืจื›ืช ื˜ื™ืคื•ืกื™ื•ืช, ื›ื•ืœืœ libc, libm, GTK, SDL, Vulkan ื•-OpenGL, ืžื•ื—ืœืคื•ืช ื‘ืืคืฉืจื•ื™ื•ืช ืžืงื•ืจื™ื•ืช ืœืคืœื˜ืคื•ืจืžื•ืช ื”ื™ืขื“. ื‘ื“ืจืš ื–ื•, ืฉื™ื—ื•ืช ืกืคืจื™ื™ื” ืžื‘ื•ืฆืขื•ืช ืœืœื ืืžื•ืœืฆื™ื”, ืžื” ืฉืžื‘ื™ื ืœืฉื™ืคื•ืจ ืžืฉืžืขื•ืชื™ ื‘ื‘ื™ืฆื•ืขื™ื.

ืืžื•ืœืฆื™ื” ืฉืœ ืงื•ื“ ืฉืื™ืŸ ืœื• ืชื—ืœื™ืคื™ื ืžืงื•ืจื™ื™ื ืœืคืœื˜ืคื•ืจืžืช ื”ื™ืขื“ ืžืชื‘ืฆืขืช ื‘ืืžืฆืขื•ืช ื˜ื›ื ื™ืงื” ืฉืœ ื”ื™ื“ื•ืจ ืžื—ื“ืฉ ื“ื™ื ืžื™ (DynaRec) ืžืกื˜ ืื—ื“ ืฉืœ ื”ื•ืจืื•ืช ืžื›ื•ื ื” ืœืื—ืจืช. ื‘ื”ืฉื•ื•ืื” ืœืคื™ืจื•ืฉ ื”ื•ืจืื•ืช ืžื›ื•ื ื”, ื”ื™ื“ื•ืจ ืžื—ื“ืฉ ื“ื™ื ืžื™ ืžื“ื’ื™ื ื‘ื™ืฆื•ืขื™ื ื’ื‘ื•ื”ื™ื ืคื™ 5-10.

ื‘ืžื‘ื—ื ื™ ื‘ื™ืฆื•ืขื™ื, ื”ืืžื•ืœื˜ื•ืจื™ื Box86 ื•-Box64, ื›ืฉื”ื ื‘ื•ืฆืขื• ื‘ืคืœื˜ืคื•ืจืžื•ืช Armhf ื•-Aarch64, ืขืœื• ืžืฉืžืขื•ืชื™ืช ืขืœ ืคืจื•ื™ืงื˜ื™ QEMU ื•-FEX-emu, ื•ื‘ื‘ื“ื™ืงื•ืช ื‘ื•ื“ื“ื•ืช (glmark2, openarena) ื”ื ื”ืฉื™ื’ื• ื‘ื™ืฆื•ืขื™ื ื–ื”ื™ื ืœื”ืคืขืœืช assembly ื™ืœื™ื“ ื”ื™ืขื“ ืคึผืœึทื˜ืคื•ึนืจืžึธื”. ื‘ืžื‘ื—ื ื™ 7-zip ื•-dav1d ืขืชื™ืจื™ ืžื—ืฉื•ื‘, ื”ื‘ื™ืฆื•ืขื™ื ืฉืœ Box64 ื ืขื• ื‘ื™ืŸ 27% ืœ-53% ืžื”ื‘ื™ืฆื•ืขื™ื ืฉืœ ื”ืืคืœื™ืงืฆื™ื” ื”ืžืงื•ืจื™ืช (ืœืฉื ื”ืฉื•ื•ืื”, QEMU ื”ืจืื” ืชื•ืฆืื•ืช ืฉืœ 5-16%, ื•-FEX-emu - 13-26% ). ื‘ื ื•ืกืฃ, ื‘ื•ืฆืขื” ื”ืฉื•ื•ืื” ืขื ืืžื•ืœื˜ื•ืจ Rosetta 2, ื”ืžืฉืžืฉ ืืช ืืคืœ ืœื”ืคืขืœืช ืงื•ื“ x86 ื‘ืžืขืจื›ื•ืช ืขื ืฉื‘ื‘ M1 ARM. Rosetta 2 ืกื™ืคืงื” ืืช ื”ืžื‘ื—ืŸ ืžื‘ื•ืกืก 7zip ืขื ื‘ื™ืฆื•ืขื™ื ืฉืœ 71% ืžื”ืžื‘ื ื” ื”ืžืงื•ืจื™, ื•-Box64 - 57%.

ื’ืจืกืื•ืช ื—ื“ืฉื•ืช ืฉืœ ืืžื•ืœื˜ื•ืจ Box86 ื•-Box64, ื”ืžืืคืฉืจื•ืช ืœืš ืœื”ืจื™ืฅ ืžืฉื—ืงื™ x86 ืขืœ ืžืขืจื›ื•ืช ARM

ื‘ืืฉืจ ืœืชืื™ืžื•ืช ืขื ืืคืœื™ืงืฆื™ื•ืช, ืžืชื•ืš 165 ืžืฉื—ืงื™ื ืฉื ื‘ื“ืงื•, ื›-70% ืขื‘ื“ื• ื‘ื”ืฆืœื—ื”. ืขื•ื“ ื›-10% ืขื•ื‘ื“ื™ื, ืืš ืขื ื”ืกืชื™ื™ื’ื•ื™ื•ืช ื•ื”ื’ื‘ืœื•ืช ืžืกื•ื™ืžื•ืช. ื”ืžืฉื—ืงื™ื ื”ื ืชืžื›ื™ื ื›ื•ืœืœื™ื WorldOfGoo, Airline Tycoon Deluxe, FTL, Undertale, A Risk of Rain, Cook Serve Delicious ื•ืจื•ื‘ ืžืฉื—ืงื™ GameMaker. ื‘ื™ืŸ ื”ืžืฉื—ืงื™ื ื‘ื”ื ืฆื•ื™ื ื• ื‘ืขื™ื•ืช, ืžื•ื–ื›ืจ ืžืฉื—ืงื™ื ื”ืžื‘ื•ืกืกื™ื ืขืœ ืžื ื•ืข Unity3D, ืฉืงืฉื•ืจ ืœื—ื‘ื™ืœืช Mono, ืฉื”ืืžื•ืœืฆื™ื” ืฉืœื• ืœื ืชืžื™ื“ ืขื•ื‘ื“ืช ื‘ื’ืœืœ ืงื•ืžืคื™ืœืฆื™ื” JIT ื‘ืฉื™ืžื•ืฉ ื‘ืžื•ื ื•, ื•ื’ื ื™ืฉ ืœื” ื“ื™ ื“ืจื™ืฉื•ืช ื’ืจืคื™ื•ืช ื’ื‘ื•ื”ื•ืช ืฉืœื ืชืžื™ื“ ื ื™ืชื ื•ืช ืœื”ืฉื’ื” ื‘ืœื•ื—ื•ืช ARM. ื”ื—ืœืคื” ืฉืœ ืกืคืจื™ื•ืช ื™ื™ืฉื•ืžื™ GTK ืžื•ื’ื‘ืœืช ื›ืจื’ืข ืœ-GTK2 (ื”ื—ืœืคื” ืฉืœ GTK3/4 ืื™ื ื” ืžื™ื•ืฉืžืช ื‘ืžืœื•ืื”).

ืฉื™ื ื•ื™ื™ื ืขื™ืงืจื™ื™ื ื‘ืžื”ื“ื•ืจื•ืช ื—ื“ืฉื•ืช:

  • ื ื•ืกืฃ ื›ืจื™ื›ื” ืœืกืคืจื™ื™ืช ื•ื•ืœืงืŸ. ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžืžืฉืง API ื”ื’ืจืคื™ ืฉืœ Vulkan ื•-DXVK (ื™ื™ืฉื•ื ืฉืœ DXGI, Direct3D 9, 10 ื•-11 ืขืœ ื’ื‘ื™ Vulkan).
  • ื›ืจื™ื›ื•ืช ืžืฉื•ืคืจื•ืช ืขื‘ื•ืจ ืกืคืจื™ื•ืช GTK. ื ื•ืกืคื• ื›ืจื™ื›ื•ืช ืขื‘ื•ืจ gstreamer ื•ืกืคืจื™ื•ืช ื”ื ืคื•ืฆื•ืช ื‘ื™ื™ืฉื•ืžื™ GTK.
  • ื ื•ืกืคื” ืชืžื™ื›ื” ืจืืฉื•ื ื™ืช (ืžืฆื‘ ืคืจืฉื ื•ืช ื‘ืœื‘ื“ ืœืขืช ืขืชื”) ืขื‘ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช RISC-V ื•-PPC64LE.
  • ื ืขืฉื• ืชื™ืงื•ื ื™ื ื›ื“ื™ ืœืฉืคืจ ืืช ื”ืชืžื™ื›ื” ื‘-SteamPlay ื•ืฉื›ื‘ืช ื”ืคืจื•ื˜ื•ืŸ. ืžืกืคืง ืืช ื”ื™ื›ื•ืœืช ืœื”ืจื™ืฅ ืžืฉื—ืงื™ Linux ื•-Windows ืจื‘ื™ื ืž-Steam ืขืœ ืœื•ื—ื•ืช AArch64 ื›ื’ื•ืŸ Raspberry Pi 3 ื•-4.
  • ื ื™ื”ื•ืœ ื–ื™ื›ืจื•ืŸ ืžืฉื•ืคืจ, ื‘ื™ืฆื•ืขื™ mmap ื•ืžืขืงื‘ ืื—ืจ ื”ืคืจื•ืช ื”ื’ื ืช ื–ื™ื›ืจื•ืŸ.
  • ืชืžื™ื›ื” ืžืฉื•ืคืจืช ื‘ืงืจื™ืื” ืฉืœ ืžืขืจื›ืช ื”ืฉื™ื‘ื•ื˜ ื‘-libc. ื ื•ืกืคื” ืชืžื™ื›ื” ืœืฉื™ื—ื•ืช ืžืขืจื›ืช ื—ื“ืฉื•ืช.
  • ืžื ื•ืข ื”ื”ื™ื“ื•ืจ ืžื—ื“ืฉ ื”ื“ื™ื ืžื™ ืฉื™ืคืจ ืืช ื”ืขื‘ื•ื“ื” ืขื ืื•ื’ืจื™ SSE/x87, ื”ื•ืกื™ืฃ ืชืžื™ื›ื” ื‘ืงื•ื“ื™ ืžื›ื•ื ื” ื—ื“ืฉื™ื, ื”ืžืจื•ืช ืื•ืคื˜ื™ืžืœื™ื•ืช ืฉืœ ืžืกืคืจื™ื ืฆืคื™ื ื•ื›ืคื•ืœื™ื, ืฉื™ืคืจ ืขื™ื‘ื•ื“ ืฉืœ ืžืขื‘ืจื™ื ืคื ื™ืžื™ื™ื ื•ืคืฉื˜ ืืช ื”ื•ืกืคืช ื”ืชืžื™ื›ื” ื‘ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ื—ื“ืฉื•ืช.
  • ืžื˜ืขื™ืŸ ืงื‘ืฆื™ ELF ืžืฉื•ืคืจ.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”