Benotzer:Grima04/Box64

Vu Wikipedia

Box64 ass e quelloppenen 64 Bit Benotzerberäich (op Englesch: userspace) Emulator, deen et engem op ARM an RISC-V baséierte Linux Systemer erlaabt, Programmer déi fir d'x86-64 Architektur compiléiert goufen zum Lafen ze bréngen. D'Variant fir 32 Bit Programmer nennt sech heibäi box86.[1]

Box64 konkurréiert op der Linux Plattform mat aneren Emulatoren, déi dat selwecht Zil hunn, dorënner FEX-Emu a QEMU.[2][3]

box64
box86
Entwéckler ptitSeb (Sebastien Chevalier) ptitSeb (Sebastien Chevalier)
Aktuell Versioun v0.2.6 v0.3.4
Programméiersprooch C C
Betribssystem Linux, Android Linux, Android
Softwaretyp Emulator Emulator
Lizenz MIT MIT
Quellcode (repository) https://github.com/ptitSeb/box64 https://github.com/ptitSeb/box86
Websäit https://box86.org/ https://box86.org/

Funktiounsweis[änneren | Quelltext änneren]

Box64 an och box86 hunn et sech als Zil gesat, Uwendungen déi eigentlech just fir d'x86 CPU-Architektur compiléiert goufen, och op ARM an RISC-V baséierte Systemer mat Linux Kernel ausféieren ze kënnen, woubäi et fir 32 a 64 Bit Programmer jeeweils box86 a box64 ginn.[1]

Eng wichteg Eegenaart vu béiden Emulatoren ass, datt se net wéi beispillsweis QEMU oder FEX-Emu e ganze Linux System emuléieren, mee probéieren esou vill Code wéi méiglech nativ ouni Emulatioun op der CPU auszeféieren. Dëst gëtt doduerch erméiglecht, datt box86 a box64 nëmmen de Code vun der Uwennung selwer emuléieren, gläichzäiteg awer d'Bibliothéike vun deenen de genotzte Programm ofhänkt nativ, spréch direkt ausféieren. Heibäi erfaasse box86 a box64 all Funktiounsopriff (op Englesch: function calls) vum emuléierte Programm op extern Bibliothéiken a leeden dës un déi entspriechend Bibliothéike vum System weider, anstatt se mat ze emuléieren (op Englesch: library wrapping). Esou ka jee no Programm e gudden Deel nativ um System ausgeféiert ginn, wat de Rechenopwand fir d'Emulatioun drastesch erofsetze kann a soumat d'Geschwindegkeet vun der Emulatioun steigert. Besonnesch bei der Videospillemulatioun mécht sech dëse Virdeel bemierkbar, well Grafiktreiber fir Schnëttstelle wéi OpenGL a Vulkan nativ op der CPU lafen a soumat a Spiller d'Leeschtung verbessert gëtt.[4][5][6]

Fir d'Leeschtung nach weiderhin ze verbesseren, gräift box64 a box86 zudeem nach op déi sougenannten dynamesch Rekompilatioun (kuerz: Dynarec) zeréck. Bei dëser Method ginn eng Rëtsch CPU Instruktiounen zu engem Codeblock zesummegefaasst, deen duerno an engem Stéck kann ausgeféiert ginn, falls en erëm am Programm optaucht. Dëst ass vill méi schnell, wéi de ganze Programm Instruktioun fir Instruktioun ze emuléieren. Bei box86 a box64 kann duerch den Dynarec e Programm 5 bis 10 Mol méi schnell emuléiert ginn.[4][5][6]

box86[änneren | Quelltext änneren]

Box86 war den éischte Programm an der box-Emulator Rei a gouf fir d'éischt den 28. Abrëll 2018 op GitHub eropgelueden.[7] Box86 ass fir méi al Software, déi nach fir 32 Bit x86 Systemer (i386 bzw. x86 Architektur) compiléiert gouf, konzipéiert ginn. Box86 ass heibäi op en 32 Bit Linux System ugewisen, fir laffäheg ze sinn a kann net op enger 64 Bit Linuxdistributioun ausgeféiert ginn.[5] Duerch den Ëmstand, datt awer hautdesdaags kaum nach reng 32 Bit Linuxdistributiounen erauskommen, muss op engem 64 Bit System op multilib bzw. multiarch oder en 32 Bit chroot zeréckgegraff ginn.[5] An Zukunft wäert et awer héchstwarscheinlech guer net méi méiglech sinn, box86 auszeféieren, well bei ARM d'Ofschafung vun 32 Bit kompatibelen CPU Kären decidéiert gouf, fir méi Plaz fir 64 Bit Instruktiounen um Chip ze schafen.[8][9] Fir deem entgéintzewierken, ass schonn eng Variant vu box86 fir 64 Bit Systemer an Entwécklung, déi sech warscheinlech box32 nenne wäert.

box32[änneren | Quelltext änneren]

Box32 ass eng sech an der Entwécklung befannend Variant vu box86, déi et erlabe soll, 32 Bit x86 Software op engem renge 64 Bit Linuxsystem zum Lafe ze bréngen. Detailer oder e genaue Publikatiounsdatum sinn awer nach net bekannt, wouduerch sech bis elo net vill iwwert dëse Projet soe léisst.[10][11]

box64[änneren | Quelltext änneren]

Box64 gouf als box86 Variant fir 64 Bit x86 Programmer (amd64 bzw. x86_64 Architektur) an d'Liewe geruff an ass den 1. Dezember 2020 op GitHub publizéiert ginn.[12] Box64 ass nëmme mat 64 Bit Linuxprogrammer kompatibel a muss och op engem 64 Bit System ausgeféiert ginn.[6] Fir méi nei Programmer an och Videospiller ass box64 am relevantsten, well an de leschte Jore kaum nach 32 Bit Software op de Maart kënnt.

Videospill-Emulatioun[änneren | Quelltext änneren]

E wichtegen Aspekt vu box86 a box64 ass d'Emulatioun vu Videospiller op mobillen a verbrauchsaarmen ARM baséierte Plattforme mat Linux Distributiounen als Betribssystem, virun allem de Raspberry Pi an ähnlechen Plattformen, sougenannten "single board computers", kuerz SBC, awer och op ARM Laptoppen. Et kann een dobäi zwëschent der Emulatioun vu Windows- a Linuxspiller ënnerscheeden.[13]

Emulatioun vu Linuxspiller[änneren | Quelltext änneren]

Fir d'Emulatioun vu Linuxspiller kënnt jee no deem, ob et sech em en 32 oder 64 Bit Spill handelt, jeeweils box86 oder box64 zum Asaz. Dës Spiller ginn normal um System installéiert an da mat box86 oder box64 emuléiert. Eng gutt Rëtsch vu Linuxspiller sinn op Plattforme wéi Steam erhältlech, wat awer kee Problem duerstellt, well Steam och mat box86 oder box64 emuléiert ka ginn. Allgemeng si 64 Bit Linuxspiller ouni Weideres op box64 laffäheg, wouduerch sech meeschtens keen zousätzlechen Opwand bei der Emulatioun ergëtt. Bei 32 Bit Linuxspiller muss awer virun der box86 Installatioun nach e multilib System oder en 32 Bit chroot ageriicht ginn an d'Grafiktreiber mussen och nach manuell fir 32 Bit compiléiert ginn.[5][6]

Emulatioun vu Windowsspiller[änneren | Quelltext änneren]

Bei de Videospiller ass net ofzestreiden, datt Linux-Portéierungen éischter eng Ausnam duerstellen a soumat en Nischeprodukt sinn. Doduerch muss fir d'Emulatioun vun de meeschte Spiller op Wine, enger Kompatibilitéitsschicht fir Windowssoftware op Linux zeréckgegraff ginn, fir se op Linux zum Lafen ze bréngen. Glécklecherweis si box86 a box64 mat Wine kompatibel, wouduerch dëst erméiglecht gëtt.[5][6]

Fir bei DirectX baséierte Windowsspiller méi Leeschtung ze erreechen, kann zousätzlech op DXVK zeréckgegraff ginn, engem Iwwersetzungsprogramm, dat DirectX, eng Windows Grafikschnëttstell, iwwert Vulkan emuléiert an domat méi effizient ass, wéi WineD3D, dat DirectX iwwert OpenGL emuléiert.[14]

32 Bit Windowsspiller[änneren | Quelltext änneren]

Fir 32 Bit Windowsspiller ginn et zwou Méiglechkeeten.

Engersäits kann een de Wee iwwert box86 mat enger 32 Bit Wine Versioun an engem 32 Bit Ënnersystem fir Linux fueren. Dëst ass zwar méiglech, gestalt sech awer als méi komplizéiert an d'Ariichten ass och méi zäitintensiv. Iwwert box86 gëtt dann eng x86 Versioun vu Wine ausgeféiert, mat Hëllef vun där een dann dat gewënschten 32 Bit Windowsspill start.[15]

Eng méi einfach Method ass, box64 ze notzen an eng méi nei Wine Versioun ze gebrauchen, déi eng WOW64 Implementéierung besëtzt. WOW64 (kuerz fir Windows-On-Windows 64-bit) ass eng Iwwersetzungsschnëttstell, déi 32 Bit Windows Software op 64 Bit Windows ausféiere kann. Mëttlerweil gouf dës Funktioun vu Wine nogebaut, wouduerch elo souwuel 32 wéi och 64 Bit Spiller op engem renge 64 Bit System laffäheg sinn a soumat d'Noutwennegkeet vu box86 an 32 Bit Wine entfält.[16][17][18][19]

64 Bit Windowsspiller[änneren | Quelltext änneren]

Fir 64 Bit Windowsspiller muss een iwwert box64 an eng 64 Bit Wine Versioun fueren. Heibäi kann och eng WOW64 kompatibel Wine Versioun geholl ginn, wouduerch een an enger kompakter Installatioun direkt 64 an 32 Bit Windows Software niefteneen ausféiere kann.[16][19]

Emulatioun op Android[änneren | Quelltext änneren]

Eng Zäit no der Verëffentlechung vu box64 hu verschidde Leit ugefaangen, no Méiglechkeeten ze sichen, fir Windowsspiller op Android Handyen zum Lafen ze bréngen. E Motivatiounsgrond war heibäi e Windows Emulator mam Numm ExaGear vun der Firma Eltechs (Elbrus Technologies), dee vun Huawei opkaaft gouf a mëttlerweil net méi fir Android weiderentwéckelt gëtt.[20][21]

Box64 a Wine sinn op Android laffäeg, well Android op e modifizéierte Linux Kernel setzt a soumat eng Portéierung op Android relativ einfach ëmzesetze war.[22] Am Moment ginn et e puer Applikatiounen op Android, déi Windowsspiller mat box64 a Wine emuléieren, dorënner den Emulator Mobox a Winlator.[23][24] Op leeschtungsstaarke Smartphonë mat Qualcomm SoC sinn domat esouguer gréisser Spiller wéi "Grand Theft Auto V" spillbar.[25]

Um Spaweck[änneren | Quelltext änneren]

Websäit vu box86 a box64

Websäit vu Wine

DXVK Iwwersetzer vun DirectX op Vulkan

Mobox Emulator

Winlator Emulator

FEX-Emu Emulator

QEMU Emulator

Literatur[änneren | Quelltext änneren]

  1. 1,0 1,1 (en)Box86 / Box64 – Linux Userspace x86 and x86_64 Emulator with a Twist. Gekuckt de(n) 2024-03-06.
  2. FEX-Emu, FEX-Emu – A fast linux usermode x86 and x86-64 emulator. fex-emu.com. Gekuckt de(n) 2024-03-06.
  3. QEMU. www.qemu.org. Gekuckt de(n) 2024-03-06.
  4. 4,0 4,1 (en)Inner workings – Box86 / Box64 (2021-10-12). Gekuckt de(n) 2024-03-06.
  5. 5,0 5,1 5,2 5,3 5,4 5,5 ptitSeb, ptitSeb/box86 (2024-03-04). Gekuckt de(n) 2024-03-04.
  6. 6,0 6,1 6,2 6,3 6,4 ptitSeb, ptitSeb/box64 (2024-03-06). Gekuckt de(n) 2024-03-06.
  7. (en)Added .gitignore · ptitSeb/box86@b03c855. GitHub. Gekuckt de(n) 2024-03-04.
  8. (en)Idrees Patel, Future ARM big core CPUs will drop support for 32-bit apps. XDA Developers (2020-10-08). Gekuckt de(n) 2024-03-04.
  9. (en)João Carrasqueira, 32-bit Arm apps won't be supported by Qualcomm's Oryon CPUs or Windows 12. XDA Developers (2023-05-23). Gekuckt de(n) 2024-03-04.
  10. (en)There is Life After the Death of x86. It's FOSS News (2022-08-20). Gekuckt de(n) 2024-03-06.
  11. (en)box86 for AArch64 without AArch32 support? · Issue #528 · ptitSeb/box86. GitHub. Gekuckt de(n) 2024-03-06.
  12. (en)Initial commit · ptitSeb/box64@80a8bf0. GitHub. Gekuckt de(n) 2024-03-04.
  13. (en)Aron Petritzsays, ARM Gaming – Box86 / Box64 (2022-04-16). Gekuckt de(n) 2024-03-06.
  14. Philip Rebohle, doitsujin/dxvk (2024-03-06). Gekuckt de(n) 2024-03-06.
  15. (en)box86/docs/X86WINE.md at master · ptitSeb/box86. GitHub. Gekuckt de(n) 2024-03-06.
  16. 16,0 16,1 (en)box64/docs/X64WINE.md at main · ptitSeb/box64. GitHub. Gekuckt de(n) 2024-03-06.
  17. (en)The Wine team is proud to announce that the stable release Wine 8.0. WineHQ. Gekuckt de(n) 2024-03-06.
  18. (en)Wine 9.0 · wine / wine · GitLab. GitLab. Gekuckt de(n) 2024-03-06.
  19. 19,0 19,1 (en)Release v0.2.4 · ptitSeb/box64. GitHub. Gekuckt de(n) 2024-03-06.
  20. ExaGear Windows Emulator. web.archive.org (2019-03-19). Gekuckt de(n) 2024-03-06.
  21. (en)ExaGear Concept. Gekuckt de(n) 2024-03-06.
  22. Kernel-Übersicht. Android Open Source Project. Gekuckt de(n) 2024-03-06.
  23. olegos2, olegos2/mobox (2024-03-06). Gekuckt de(n) 2024-03-06.
  24. BrunoSX, brunodev85/winlator (2024-03-06). Gekuckt de(n) 2024-03-06.
  25. (en)Mobox (esync): GTA V/ 25-30fps/ SD870/ Poco F3. Gekuckt de(n) 2024-03-06.