The Bochs x86 PC Emulator
[Posted January 19, 2004 by cook]
Bochs (pronounced box)
is cross-platform PC emulator that was written by Kevin Lawton:
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, Pentium, Pentium Pro or AMD64 CPU, including optional MMX, SSE, SSE2 and 3DNow instructions.
Bochs is capable of running most Operating Systems inside the emulation including Linux, Windows 95, DOS, and Windows NT 4
Bochs features emulation for the standard PC i/o ports,
keyboard, mouse, hard drive, floppy drive, and CDROM.
It also features emulation for a
Sound Blaster audio card and NE2000 ethernet device.
See
this list of supported devices for details.
The project includes
disk images for various pre-configured operating systems:
We are trying to collect a minimal hard disk or floppy disk image for all free supported operating systems that Bochs can run. Each TAR file contains everything you need to try out the operating system, including a .bochsrc, BIOS and VGA BIOS. The goal is to make it very easy for anyone to try out a disk image.
Currently, the list of pre-packaged free operating systems includes
Linux, DLX Linux, Pragma Linux, Debian 3.0r0, Debian 2.2r5,
FreeDOS, NetBSD, OpenBSD, and PicoBSD.
Other supported operating systems include Minix, and GNU/Hurd.
The
screenshots
page shows Bochs running many different operating systems from within
various host platforms.
Due to the x86 instruction set emulation used by Bochs, performance
of emulated applications may not be especially speedy.
Version 2.1 of Bochs
was released recently.
"We have improved the accuracy of the simulation in many ways,
notably in the cpu, fpu, and vga areas; 3DNow! and PNI instructions are now
supported, and Bochs includes a new disassembler that supports all IA-32
instruction sets; On the I/O devices side, Bochs now provides experimental
PCI VGA and USB cards, 16550A uarts and gameport emulation; New types of
disk image can be used as harddisks: stackable, commitable or
growing."
Bochs is licensed under the GNU LGPL, the source code is available
here.
See the
project documentation and
faq for more information.
(
Log in to post comments)