The following table shows the features of Bochs and which platforms they currently work with.
Table 1-1. Bochs Features
Feature | Supported? | Description |
---|---|---|
configure script | Yes | Bochs uses GNU autoconf to configure Makefiles and headers. Autoconf helps Bochs to compile on a wide variety of platforms. |
386,486,Pentium Emulation | Yes | Bochs can be configured to emulate on of several families of Intel hardware. Some Pentium features are supported, such as the Time Stamp Counter. |
Pentium Pro Emulation | Incomplete | A few Pentium Pro features are supported, such as an on-chip APIC for SMP simulation. |
Cmd Line Debugger | Yes | Powerful command line debugger (optional) that lets you stop execution and examine registers and memory, set breakpoints, etc. |
Floating Point | Yes | Uses software floating point routines written by Bill Metzenthen |
VGA | Yes | VGA color graphics emulation in a window |
Floppy disk | Yes | Supports floppy disk images on all platforms: 1.44M 3.5", 1.2M 5.25", and 720K 3.5". On Unix and Windows NT/2000, Bochs can access the physical floppy drive. |
Hard disk | Yes | Emulates one or two AT/IDE hard drives via image files. No physical hard disk access is supported, primarily for safety reasons. Only two IDE devices, total, are supported. So you can have two hard disks, or one hard disk and one CDROM. |
Keyboard | Yes | Emulates a PS/2 keyboard with North American key mappings. Keyboards with other key mappings are reported to have problems with special keys and punctuation. |
Mouse | Yes | Emulates a PS/2 mouse with 3 buttons. |
Network card | Yes | Emulates an NE2000 compatible network card. On Windows NT/2000, Linux, FreeBSD, and NetBSD, Bochs will forward packets to and from the operating system so that the guest OS can talk on the physical network. Unfortuately, with the current implementation, the guest OS can talk to any machine on the network BUT NOT the host machine. |
CDROM | Yes | Emulates an IDE CDROM. The CDROM can read from an ISO disk image on any platform. On Windows (95/98/NT/2000), Linux, SunOS, FreeBSD, NetBSD, Amiga/MorphOS, and BeOS[a], Bochs can read from the physical cdrom. When the CDROM is enabled, only one hard disk can be used. |
Parallel Port | Yes | Parallel port emulation was added by Volker Ruppert for Bochs 1.3. Data that is sent to the parallel port by the guest OS can be saved into a file or sent directly into the parallel port device (Unix only). |
Serial Port | Not quite | The serial port (single 8259 UART emulation) is not really usable yet. The interface to the emulated CPU is mostly working, but it needs some work before it can talk to a raw serial port or to a pseudo terminal. |
16/32 bit addressing | Yes | 16 or 32 bit operand sizes, stack size, and addressing |
v8086/paging | Yes | Virtual-8086 mode and paging |
PIC | Yes | Master and slave programmable interrupt controller. |
CMOS functions | Yes | CMOS functions |
Dynamic Translation | No | Because Bochs is designed to be portable, it does not attempt to do any dynamic code translation or virtualization. See What is Bochs? for details. |
Simulate a Multiprocessor | Yes | Bochs can be configured to simulate up to 15 processors. This feature is still experimental, but it can boot Linux 2.2 kernels with SMP support. Please note that this does NOT mean that bochs can run faster on a physical SMP machine. |
Take advantage of your SMP box | No | At present, Bochs does not use threads or parallel processing, so it will not run any faster on multiprocessor hardware. |
Notes: a. Coming soon, hopefully in v1.3 |