Stories
Slash Boxes
Comments

SoylentNews is people

posted by janrinok on Sunday November 21 2021, @07:26AM   Printer-friendly

Box86 + Box64 Updated For Running Linux x86/x86_64 Programs On Other Architectures

Box86 as the open-source project to run Linux x86 binaries on other CPU architectures like ARM is out with a new feature release along with the accompanying Box64 project for x86_64 treatment. With today's Box86 update is even expanded Vulkan support now good enough for handling DXVK.

Box86 aims to run Linux x86 binaries on other CPU architectures with better performance than QEMU or other forms of virtualization. With Box86 also comes the ability to utilize OpenGL acceleration and even running some Steam / Wine games when taking some additional steps. Though in order for Box86 to work out, the operating system does need a working 32-bit subsystem/libraries. Besides ARM, Box86 could prove important with the growing interest in RISC-V as well as there having been interest from the (Open)POWER side too. Meanwhile Box64 has also been updated as the adjoining project providing similar treatment for running x86 64-bit binaries on other architectures.

box86 v0.2.4 and box64 v0.1.6.

See also: Wine 6.22 Released With Mono 7.0, Joystick Improvements
Wine 7.0 Code Freeze To Begin In Early December


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 3, Informative) by DannyB on Monday November 22 2021, @03:49PM

    by DannyB (5839) Subscriber Badge on Monday November 22 2021, @03:49PM (#1198587) Journal

    JVM (Java Virtual Machine) does both.

    Functions that are hardly ever used run as interpreted bytecode.

    Any function that uses significant CPU gets (1) instantly JIT compiled to native code by C1 compiler; and (2) put on a list to be recompiled to native code again later by C2 compiler.

    When the C2 compiler comes around to recompile the function again, it spends significant time and effort to translate it into highly optimized code. This includes using any possible instruction set extensions available on THIS HARDWARE that we are running on right now. (Something an ahead of time compiler like C cannot do) The C2 compiler has precise and exact knowledge of the entire global program. It can make deductions like: even this is a virtual function, only one subclass of this ever exists at runtime and therefore a vtable is totally unnecessary, and all functions can be simple calls. And other deductions about parameter passing and other things based on knowledge of the entire program after linking. Something else an ahead of time compiler cannot have knowledge of.

    Very large Java programs tend to start up slow, then over a few minutes begin to "warm up" and run fast.

    Java works well for large programs that run for a long time. It works poorly for quick command line programs like an improved "ls" command.

    --
    If you think a fertilized egg is a child but an immigrant child is not, please don't pretend your concerns are religious
    Starting Score:    1  point
    Moderation   +1  
       Informative=1, Total=1
    Extra 'Informative' Modifier   0  
    Karma-Bonus Modifier   +1  

    Total Score:   3