Shanduro nyowani dzeBox86 uye Bhokisi64 emulators, dzinokubvumidza kuti umhanye mitambo yex86 paArM system.

Zvakaburitswa zveBox86 0.2.6 uye Box64 0.1.8 emulators zvakaburitswa, zvakagadzirirwa kuita Linux zvirongwa zvakagadzirirwa x86 uye x86_64 zvivakwa pamidziyo ine ARM, ARM64, PPC64LE uye RISC-V processors. Mapurojekiti anogadzirwa nekuwirirana nechikwata chimwe chevagadziri - Bhokisi86 inogumira pakukwanisa kumhanyisa 32-bit x86 maapplication, uye Bhokisi64 rinopa kugona kumhanya 64-bit executables. Iyo purojekiti inobhadhara zvakanyanya pakuronga kutangwa kwemitambo yekushandisa, kusanganisira kupa kugona kuvhura Windows inovaka kuburikidza newaini uye Proton. Iyo kodhi kodhi yeprojekiti yakanyorwa muC uye yakagoverwa (Bhokisi86, Bhokisi64) pasi peMIT rezinesi.

Chinhu chepurojekiti iko kushandiswa kweiyo hybrid execution modhi, umo emulation inoiswa chete kune yemuchina kodhi yekushandisa pachayo uye chaiwo maraibhurari. Yakajairika system maraibhurari, anosanganisira libc, libm, GTK, SDL, Vulkan uye OpenGL, anotsiviwa nesarudzo dzakaberekerwa kumapuratifomu anonangwa. Nenzira iyi, mafoni eraibhurari anoitwa pasina kuteedzera, zvichikonzera kuwana kwakakosha kwekuita.

Emulation yekodhi iyo isina inotsiviwa yekwakanangana nepuratifomu inoitwa uchishandisa hunyanzvi hwekudzoreredza (DynaRec) kubva kune imwe seti yemirairo yemuchina kuenda kune imwe. Kuenzaniswa nemirairo yemuchina wekududzira, kudzokorodza kwesimba kunoratidza 5-10 nguva dzepamusoro kuita.

Mukuyedzwa kwekuita, Bhokisi86 neBhokisi64 emulators, payakaurayiwa paArmhf neAarch64 mapuratifomu, yakakunda zvakanyanya mapurojekiti eQEMU neFEX-emu, uye mumabvunzo ega ega (glmark2, openarena) vakawana kuita kwakafanana nekumhanyisa gungano rekuzvarwa kune chinangwa. platform. Mumiyedzo ye7-zip uye dav1d yemakomputa, mashandiro eBox64 aibva pa27% kusvika pa53% yekushanda kwechikumbiro chemuno (pakuenzanisa, QEMU yakawana 5-16%, uye FEX-emu 13-26%). Pamusoro pezvo, kuenzanisa kwakaitwa neRosetta 2 emulator, yakashandiswa naApple kumhanya x86 kodhi pane masisitimu ane M1 ARM chip. Rosetta 2 yakapa iyo 7zip-yakavakirwa bvunzo nekuita kwe71% yezvakavakwa, uye Bhokisi64 - 57%.

Shanduro nyowani dzeBox86 uye Bhokisi64 emulators, dzinokubvumidza kuti umhanye mitambo yex86 paArM system.

Kana iri yekuenderana nemaapplication, kubva mumitambo zana nemakumi matanhatu neshanu yakaedzwa, ingangoita makumi manomwe muzana yakashanda zvinobudirira. Nezve imwe 165% basa, asi nekumwe kuchengetedza uye kurambidzwa. Mitambo inotsigirwa inosanganisira WorldOfGoo, Airline Tycoon Deluxe, FTL, Undertale, A Risk of Rain, Cook Serve Delicious uye yakawanda GameMaker mitambo. Pakati pemitambo iyo matambudziko akacherechedzwa, kutaurwa kunoitwa mitambo yakavakirwa paiyo Unity70D injini, iyo yakasungirirwa kuMono package, iyo emulation iyo isingashande nguva dzose nekuda kwekuunganidzwa kweJIT kunoshandiswa muMono, uye zvakare ine zvakaringana. yakakwirira magiraidhi zvinodiwa izvo zvisingawanzo kuwanikwa pamabhodhi eARM. Kutsiviwa kwemaraibhurari ekushandisa eGTK parizvino kwakaganhurirwa kuGTK10 (kutsiva GTK3/2 hakuna kuitwa zvizere).

Shanduko huru mune zvitsva zvinoburitswa:

  • Yakawedzerwa inosungirwa kuraibhurari yeVulkan. Yakawedzerwa rutsigiro rweVulkan uye DXVK mifananidzo API (kuitwa kweDXGI, Direct3D 9, 10 uye 11 pamusoro peVulkan).
  • Kusungirirwa kwakavandudzwa kwemaraibhurari eGTK. Yakawedzerwa zvinosungirwa zve gstreamer uye maraibhurari anowanzo shandiswa muGTK application.
  • Yakawedzera rutsigiro rwekutanga (chete kududzira modhi ikozvino) yeRISC-V uye PPC64LE zvivakwa.
  • Kugadziriswa kwakaitwa kuvandudza rutsigiro rweSteamPlay uye iyo Proton layer. Inopa kugona kumhanya akawanda eLinux neWindows mitambo kubva kuSteam paAArch64 mabhodhi akadai seRaspberry Pi 3 uye 4.
  • Yakavandudzwa ndangariro manejimendi, mmap mashandiro, uye ndangariro kudzivirira kutyorwa kwekutevera.
  • Yakavandudzwa rutsigiro rweiyo clone system call mu libc. Yakawedzera rutsigiro rwekufona system nyowani.
  • Injini yekudzoreredza ine simba yakavandudza basa nemarejisita eSSE/x87, yakawedzera tsigiro yemakodhi emichina mitsva, shanduko yakagadziridzwa yenhamba uye nhamba mbiri, kugadziridzwa kweshanduko yemukati, uye kurerutsa kuwedzera kwerutsigiro rwezvivakwa zvitsva.
  • Yakavandudzwa ELF file loader.

Source: opennet.ru

Voeg