Bochs

From Segfault
Jump to: navigation, search

Installation

Bochs is available for various platforms[1]. To install from SVN:

svn checkout svn://svn.code.sf.net/p/bochs/code/trunk/bochs bochs-svn
cd bochs-svn
./configure --prefix=/opt/bochs --with-x11 --enable-smp --enable-cdrom --enable-x86-64 --enable-pci --enable-e1000 --enable-sb16 
make
sudo make install

Usage

Note: both command and configuration file syntax changes quite a bit between releases. The following is for bochs-2.6.6 (June 2014)[2].

Create a disk image:

$ bximage -mode=create -hd=1024M -q disk0.img
Creating hard disk image 'disk0.img' with CHS=2080/16/63
The following line should appear in your bochsrc:
  ata0-master: type=disk, path="disk0.img", mode=flat

The distribution should come with a sample configuration in share/doc/bochs/bochsrc-sample.txt. Edit as needed and save a local copy:

$ grep ^[a-z] vm0.bochsrc
cpu: model=core2_penryn_t9600, count=2, ips=50000000, reset_on_triple_fault=1, ignore_bad_msrs=1
memory: guest=512, host=512
romimage: file=$BXSHARE/BIOS-bochs-latest 
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest

pci: enabled=1, chipset=i440fx
ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
ata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15
ata2: enabled=0, ioaddr1=0x1e8, ioaddr2=0x3e0, irq=11
ata3: enabled=0, ioaddr1=0x168, ioaddr2=0x360, irq=9
ata0-master: type=disk, mode=flat, path="/opt/vm/bochs/vm0/disk0.img"
ata0-slave:  type=cdrom, path="/mnt/nfs/debian.iso", status=inserted
boot: disk, cdrom

mouse: enabled=0
e1000: enabled=1, mac=52:54:00:12:34:56, ethmod=fbsd, ethdev=en1

log: bochsout.txt
panic: action=ask
error: action=report
info: action=report

Let's start the machine with:

$ bochs -f vm0.bochsrc

References

  1. Bochs Binary and Source Releases
  2. Changes in 2.6.6 (June 15, 2014)