Bochs is a cross-platform, open-source PC emulator. It emulates an x86 processor along with a PC's standard devices (e.g. PIC, PIT, PCI bus, etc.). Unlike VMware, Bochs does not install a hypervisor or VMM and unlike QEmu, it does not dynamically recompile code. Rather, Bochs emulates all hardware and instructions. Consequently, it is slower than these other applications but is also more portable. It is a fantastic tool for debugging operating systems and is often used at universities in their OS courses.


I have contributed 3 patches to Bochs which have all been accepted into trunk. The first patch was in 2003 when I reverse-engineered VMware's version 3 .vmdk virtual hard disk format and added support for it in Bochs. In 2006, I added support for VMware's version 4 virtual disks based on their specification for the format. Finally, in 2008, I fixed a bug in the Bochs debugger where the stepN command did not honour breakpoints.