Slashdot Mirror


Bochs 2.0 Released

Jas Sandys-Lumsdaine writes "Bochs 2.0 has just been released - project lead Bryce Denney writes: "It's been a busy 6 months since our previous release! Bochs is now about twice as fast as version 1.4.1. Also, we can now emulate MMX instructions, SSE/SSE2, and even AMD x86-64 instructions if you turn on the appropriate configure options. The emulation improvements have paid off; several people have been able to install Windows XP recently." Excellent stuff."

7 of 278 comments (clear)

  1. Would it have been so hard to say... by Anonymous Coward · · Score: 5, Informative

    Bochs is a highly portable open source IA-32 (x86) PC emulator written in C++, that runs on most popular platforms. It includes emulation of the Intel x86 CPU, common I/O devices, and a custom BIOS. Currently, bochs can be compiled to emulate a 386, 486 or Pentium CPU. Bochs is capable of running most Operating Systems inside the emulation including Linux, Windows® 95, DOS, and recently Windows® NT 4. Bochs was written by Kevin Lawton and is currently maintained by this project.

  2. Re:Boch vs. VMWare by damiam · · Score: 4, Informative

    Bochs emulates the entire x86 instruction set, so it will run on any architecture. VMWare simply creates a virtual machine and passes instructions directly to the processor, so it only runs on x86 machines. VMWare is about a zillion times faster and easier to set up, but it also costs infinitly more than Bochs.

    --
    It's hard to be religious when certain people are never incinerated by bolts of lightning.
  3. Re:Boch vs. VMWare by Mitchell+Mebane · · Score: 5, Informative

    That's like comparing apples and oranges. VMWare is a virtual machine; it only emulates certain parts of a computer. It's "passes through" most of the work to the host machine. This means that is a lot faster, but it can only run programs designed for the host architecture. Bochs, OTOH, is a full-fledged emulator, which, eventually, will let you run any program on any machine. Since it emulates every, though, it is FAR slower that VMWare. I hope they add some sort of JIT engine sometime.

    --

    The roots of education are bitter, but the fruit is sweet.
    --Aristotle
  4. Re:What does it do? by TeknoHog · · Score: 4, Informative

    It emulates x86 PC hardware. So you can run e.g. Windows 9x inside any OS+hardware where Bocks runs.

    --
    Escher was the first MC and Giger invented the HR department.
  5. Re:How well does it work? by mabinogi · · Score: 4, Informative

    No, it IMPLEMENTS the Win32 API.

    How the hell do you emulate an API?
    Either you provide the functions or you dont

    The difference is, an emulator emulates actual hardware in software, Wine runs directly on the hardware, and just implements win32 so that Windows programs can run.

    Wine -> Implements Win32 API on Linux, all code run directly on hardware - requires x86 machine to run it on. Due to the Win32 API being badly documented, tends to have compatibility problems.

    VMWare -> virualizes the hardware, ie. creates a whole new virtual x86 machine in which code runs directly on the hardware. Some things emulated due to being impossible or difficult to share between the host and guest operating system. Requires x86 machine to run it on, but is generally very compatible, and allows you to install (in theory) any x86 operating system.

    Bochs -> Complete emulation of every aspect of an x86 machine, all code running within a Bochs machine is interpreted by software. Will be very slow, but can run on many different platforms and processors, and should be pretty much as compatible as VMWare. Will allow installing any x86 operating system.

    Flex86 -> An open source VMWare clone, shares some code with Bochs, will have all the advantages of VMWare, and has source too. Still in development though....

    --
    Advanced users are users too!
  6. Re:It must be good! by zulux · · Score: 4, Informative


    Yeah, booting off that CD is pretty tough.

    Last time, I had to like... select a computer name and everything! I was exhausted!


    Err.. The myth of 'Windows is Easy to Install' must be crushed.

    Let me illuminate the joys of installing Windows 2000 server.

    Boot of of CD-Rom
    Wait for drivers to load ~ 5 min
    Partition Drive
    Reboot
    Wait for drivers to load ~ 5 min
    Format Drive
    Reboot
    Wait for drivers to load ~ 5 min
    Choose crap
    Wait for Windows to install ~ 10 min
    Reboot
    Copy cryptic crap off of security sticker
    Choose password
    Reboot
    turn off 'helpfull' how to use windoes help thingy
    move home-page off of MSN
    install SP3 ~ 15 min
    reboot
    install ie6 ~ 10 min
    reboot
    move home-page off MSN again.
    install 'critical updates' ~ 10 min
    reboot
    install office ~ 5 min
    install office updates ~ 10 min
    install office critical updates ~5 min
    install antivirus ~ 5 min

    Ugh

    --

    Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.

  7. Re:Boch vs. VMWare by ipsuid · · Score: 4, Informative

    Precisely.

    I've used all three (Bochs, WINE, VMWare) and each are designed for different purposes.

    Bochs is quite slow for normal application usage, but it is absolutely ideal for low level OS development work. Compare crashing your real machine hundreds of times while debugging your bootloader and memory management code to having a "virtual" crash in Bochs. Also, Bochs provides stubs for implementing runtime instrumentation, so you can use powerful debugging techniques that remain 100% insulated from the debugee.

    If you are primarily concerned with running one or two Windows apps under Linux that you just can't live without, then Wine is for you. Sure, there are still some rough edges, but in many cases, your application will actually run faster under Linux then under Windows. However, parts of Wine are still incomplete, so YMMV. The biggest plus with the Wine approach is that interaction between apps is a tad simpler.

    VMWare creates a bit of a middle ground between Wine and Bochs. I've used it for the past two years to keep a copy of Win98 and Win2k on my Linux box. Because being an independent programmer/consultant sometimes requires me to use technologies I don't exactly embrace, the Windows in VMWare option allows me to maintain productivity while not opening myself to network *cough* problems. In addition, I can keep multiple OS's running concurrently so testing and debugging apps is fairly painless. Except for a few operations (installing software, for example) the virtual machine runs almost as fast as if I ran the OS natively. BTW, when Windows inevitably hoses itself, I have it running again in the time it takes to copy a 1G file ;-)


    So in summary, if you are doing some hardcore hacking, get yourself Bochs... it will save you many many reboots.

    If you want to run MS Office and can live with a few glitches, get yourself Wine.

    Looking to simplify cross-OS application debugging, need to have Windows close at hand, doing tech support? Then VMWare is your answer.

    Want to run the latest DirectX 9.0, wet your pants LOD game... yet run Linux as well? Get yourself a second machine.

    --
    It appears Ockham lost his razor and grew a beard.