2
0
mirror of https://github.com/xcat2/xNBA.git synced 2024-11-22 09:31:51 +00:00

Updated instructions to reflect current reality.

This commit is contained in:
Michael Brown 2006-04-26 00:40:27 +00:00
parent 0eb0dd0437
commit 82c4afcb32

View File

@ -15,39 +15,24 @@ but it doesn't seem to quite work.)
To get bochs running is fairly simple:
1. Get the bochs source code:
a) cvs -d:pserver:anonymous:@cvs.sourceforge.net:/cvsroot/bochs login
b) cvs -d:pserver:anonymous:@cvs.sourceforge.net:/cvsroot/bochs co bochs
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/bochs login
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/bochs co bochs
2. Configure bochs with
./configure --enable-all-optimisations --enable-pci \
--enable-ne2000 --enable-pnic
Other potentially useful configure options:
--prefix=/usr
to force use of standard file locations
--enable-debugger
to enable the internal debugger
pushd bochs
./configure --enable-all-optimisations --enable-pci --enable-pnic
--enable-debugger --enable-magic-breakpoints --enable-disasm
popd
3. Build bochs:
make
make -C bochs
4. Configure Etherboot with CONFIG_PCI_DIRECT: add the line
CFLAGS += -DCONFIG_PCI_DIRECT
to the end of src/arch/i386/Config.
5. Build bin/pnic.zrom:
make bin/pnic.zrom
6. Load the TUN/TAP kernel module:
4. Set up a TAP virtual network device:
modprobe tun
You should see the device /dev/net/tun is created automatically if
you're using devfs, otherwise you may have to create it by hand with:
mknod /dev/net/tun c 10 200
tunctl -u <username> -t tap0
ifconfig tap0 up 10.254.254.2 netmask 255.255.255.0
7. Grant yourself write access to /dev/net/tun:
su -c 'chown <your user id> /dev/net/tun'
The alternative to this is to run Bochs as root. Don't do that.
8. Add the following fragment to /etc/dhcpd.conf:
5. Add the following fragment to /etc/dhcpd.conf:
subnet 10.254.254.0 netmask 255.255.255.252 {
range dynamic-bootp 10.254.254.1 10.254.254.1;
}
@ -57,39 +42,21 @@ To get bochs running is fairly simple:
machine you are using for running Bochs. If not, then you're on
your own.
9. Change back to this directory and run bochs from your Bochs source tree:
cd /path/to/Etherboot/contrib/bochs
/path/to/bochs/source/tree/bochs
6. Restart dhcpd
/etc/init.d/dhcpd restart
10. Select option 5 (Begin simulation). You will be prompted for your
root password. This is required in order to configure the tun1
network interface and to restart the DHCP server.
7. Build Etherboot images
pushd ../../src
make bin/pnic.dsk
popd
11. You should see Bochs start up and attempt to boot from the network,
with a screen that looks like:
VGA BIOS - Version 2.40
Copyright (C) 1990-2000 Elpin Systems, Inc.
All rights reserved.
Licensed for use with bochs, courtesy of MandrakeSoft.
For information on this or other VGA development products, contact
Elpin Systems at: (800) 723-9038 or www.elpin.com
Bochs BIOS, 1 cpu, $Revision$ $Date$
Etherboot 5.3.6 (GPL) http://etherboot.org Tagged ELF for [PNIC]
Relocating _text from: [00091020,0009fb50) to [01ef14d0,01f00000)
Boot from (N)etwork or (Q)uit?
Probing pci nic...
[pnic] - Detected Bochs Pseudo NIC MAC FE:FD:00:00:00:01 (API v1.0) at 0xdc00
Searching for server (DHCP)...
..Me: 10.254.254.1, Server: 10.254.254.2
Loading 10.254.254.2:/tftpboot/kernel
8. Start Bochs
./bochs/bochs -q
You should get to the debugger prompt "<bochs:1>". Type "c" to
start running Bochs.
You should see Bochs start up, load up Etherboot and attempt to boot
from the network.
@ -101,7 +68,7 @@ console for Etherboot running within Bochs. Simply run
"./serial-console" on a spare tty (e.g. a separate xterm window)
before starting Bochs, and ensure that you have compiled Etherboot
with appropriate settings such as
CFLAGS+= -DCONSOLE_DUAL -DCOMCONSOLE=0x3F8 -DCONSPEED=9600
CFLAGS+= -DCONSOLE_DUAL -DCOMCONSOLE=0x3F8 -DCONSPEED=9600
There is a manual page for "serial-console"; use
"man ./serial-console.1" to view it.