Ang mga bagong bersyon ng Box86 at Box64 ay nailabas na

Kamakailan lamang ang paglabas ng ang mga bagong bersyon ng Box86 0.2.6 at Box64 0.1.8 emulators. Ang mga proyekto ay binuo nang naka-sync ng parehong development team.

Ang Box86 ay limitado sa pagpapatakbo ng 86-bit x32 na mga application (tulad ng mga laro) sa mga non-x86 Linux system, gaya ng ARM (dapat 32-bit little-endian ang host system). Samakatuwid, ang isang 32-bit na subsystem ay kinakailangan upang patakbuhin at i-compile ang Box86. Ang Box86 ay walang silbi sa mga 64-bit lamang na system. Gayundin, kailangan mo ng 32-bit na toolchain para i-compile ang Box86.

Dahil ginagamit ng Box86 ang mga katutubong bersyon ng ilang "system" na aklatan, tulad ng libc, libm, SDL, at OpenGL, madali itong isama at gamitin sa karamihan ng mga application, at ang pagganap ay maaaring nakakagulat na mataas sa maraming mga kaso.

Ganoon din sa Box64, lamang na tulad at pinapayagan magpatakbo ng 64 bit executable. Ang proyekto ay nagbabayad ng malaking pansin sa organisasyon ng pagpapalabas ng mga application ng laro, kabilang ang kakayahang ilabas ang mga build ng Windows sa pamamagitan ng Wine at Proton.

Ang isang tampok ng proyekto ay ang paggamit ng isang hybrid na modelo ng pagpapatupad, kung saan inilalapat lang ang emulation sa machine code ng application mismo at sa mga partikular na library. Ang mga generic na library ng system, kabilang ang libc, libm, GTK, SDL, Vulkan, at OpenGL, ay pinapalitan ng mga native na variant sa mga target na platform. Samakatuwid, ang mga tawag sa library ay isinasagawa nang walang pagtulad, na nagbibigay-daan sa isang makabuluhang pagtaas ng pagganap.

Tinutularan ang code na walang katutubong overrides para sa target na platform ay ginagawa gamit ang pamamaraan ng dynamic na recompilation (DynaRec) mula sa isang set ng mga tagubilin sa makina patungo sa isa pa. Kung ikukumpara sa pagbibigay-kahulugan sa mga tagubilin sa makina, ang dynamic na recompilation ay nagpapakita ng 5 hanggang 10 beses na mas mahusay na pagganap.

sa mga pagsusulit sa pagganap, kapag tumatakbo sa Armhf at Aarch64 platform, Ang mga emulator ng Box86 at Box64 ay higit na nagtagumpay sa mga proyekto ng QEMU at FEX-emu at sa ilang mga pagsubok (glmark2, openarena) nakamit nila ang pagganap na kapareho ng pagpapatakbo ng isang assembly na native sa target na platform.

Sa mga tuntunin ng pagiging tugma ng mga aplikasyon, dSa 165 larong nasubok, humigit-kumulang 70% ang matagumpay. Humigit-kumulang 10% pang trabaho, ngunit may ilang partikular na reserbasyon at paghihigpit.

Sa mga laro kung saan nabanggit ang mga problema, binanggit ang mga laro batay sa Unity3D engine, na nakatali sa pakete ng Mono, na ang pagtulad ay hindi pa rin palaging gumagana dahil sa JIT compilation na ginamit sa Mono, at mayroon ding mataas na graphics, mga kinakailangan. na hindi palaging makakamit sa ARM boards. Ang pagpapalit ng mga GTK application library ay kasalukuyang limitado sa GTK2 (ang pagpapalit ng GTK3/4 ay hindi ganap na ipinapatupad).

Tulad ng para sa pangunahing pagbabago sa mga bagong release, ang sumusunod ay naka-highlight:

  • Nagdagdag ng link para sa Vulkan library. Nagdagdag ng suporta sa Vulkan at DXVK graphics API (pagpapatupad ng DXGI, Direct3D 9, 10 at 11 sa Vulkan).
  • Mga pinahusay na binding para sa mga library ng GTK. Nagdagdag ng mga binding para sa gstreamer at mga library na karaniwang ginagamit sa mga GTK application.
  • Nagdagdag ng paunang suporta (sa ngayon ay interpret mode lang) para sa mga arkitektura ng RISC-V at PPC64LE.
  • Ang mga pag-aayos ng bug ay ginawa upang mapabuti ang pagiging tugma sa SteamPlay at sa Proton Layer. Posibleng magpatakbo ng maraming laro sa Linux at Windows mula sa Steam sa mga AArch64 board tulad ng Raspberry Pi 3 at 4.
  • Pinahusay na pamamahala ng memorya, pag-uugali ng mmap, at pagsubaybay para sa mga paglabag sa proteksyon ng memorya.
  • Pinahusay na suporta para sa clone system na tawag sa libc. Nagdagdag ng suporta para sa mga bagong system call.
  • Sa dynamic na recompilation engine, ang pagtatrabaho sa SSE/x87 registries ay napabuti, suporta para sa mga bagong machine code ay naidagdag, float at double conversion ay na-optimize, panloob na pagpoproseso ng sangay ay napabuti, Pinasimpleng suporta para sa mga bagong arkitektura.
  • Pinahusay na ELF file loader.

Sa wakas, kung interesado kang malaman ang higit pa tungkol dito, maaari mong konsultahin ang mga detalye Sa sumusunod na link.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.