Box64 emulaatori 0.3.0 väljaanne, mis võimaldab käivitada x86 mänge ARM64 ja RISC-V süsteemides

Avaldatud on Box64 0.3.0 emulaator, mis on mõeldud Linuxi programmide käitamiseks, mis on kompileeritud x86_64 arhitektuuri jaoks, ARM64, RISC-V ja Loongarch64 protsessoritega seadmetes. Projekt keskendub mängu rakenduste käitamise korraldamisele ja pakub võimalust Windowsi build'ide käitamiseks läbi wine ja Proton. Projekti lähtekood on kirjutatud C keeles ja see levitatakse MIT litsentsi alusel.

Projekti eripära on hübriidmudeleid, kus emuleerimist rakendatakse ainult rakenduse enda masina koodile ja spetsiifilistele teekidele. Tüüpilised süsteemiteegid, sealhulgas libc, libm, GTK, SDL, Vulkan ja OpenGL, asendatakse sihtrakenduste jaoks sobivate variantidega. Seega, teegikutsed toimuvad ilma emuleerimiseta, mis võimaldab saavutada märkimisväärset jõudluse tõusu.

Koodi emuleerimine, millele ei ole sihtplatvormile sobivaid natiivseid asendusi, toimub dünaamilise ümberkompileerimise tehnika (DynaRec) abil ühest masinakeelte komplektist teise. Dünaamiline ümberkompileerimine näitab võrreldes masinakeelte tõlgendamisega 5–10 korda kõrgemat jõudlust.

Uues versioonis:

  • Tehtud on toetuse rakendamine protsessorite laienduste AVX, AVX2, BMI1, BMI2, ADX, FMA, F16C ja RDRAND jaoks.
  • Lisatud on keskkonnamuutuja BOX64_AVX, mille seadmine väärtusele 1 aktiveerib AVX, BMI1, F16C ja VAES toe ning väärtusele 2 – AVX2, BMI2, FMA, ADX, VPCLMULQDQ ja RDRAND toe.
  • Lisatud on dünaamilise ümberkompilatsiooni (DynaRec) toetus AVX, AVX2 ja sarnaste käskude tõlkimiseks ARM64 arhitektuuri põhinevate NEON käskude esitluseks.
  • Lisatud on esialgne toetus SIMD käskude ümberkompileerimiseks RVV käskudeks RISC-V süsteemides.
  • DynaRec mehhanismi on optimeeritud, lisatud on toe rakendamine uutele opkoodidele RISC-V ja Loongarch64 jaoks.
  • CPUID opkoodide loend on uuendatud, nüüd antakse vaikimisi välja Haswell serie CPU, mitte Pentium IV kaudu CPUID.
  • Lisatud tugi Waylandile ja võimalus dünaamiliseks ümberkompileerimiseks Waylandiga seotud raamatukogudes, mis võimaldas saavutada ühilduvuse Wine-waylandiga.
  • Toetatud mängude arvu on laiendatud, näiteks on saavutatud ühilduvus mänguga Death Stranding. Tagatud on UnityPlayer.dll kasutamise tuvastamine Wine'is käitatavates programmides ning parameetri BOX64_DYNAREC_STRONGMEM=1 automaatne seadistamine.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster