cvs -d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/qemu \
co qemu
+2a. Patch the qemu code. There is currently a bug that causes qemu to
+ execute Etherboot incredibly slowly. The bug seems to be related
+ to the relative prioritisation of CPU and I/O operations within
+ qemu. This patch (which I found via Google) isn't a proper fix,
+ but it does work around the problem:
+ patch -p0 < qemu-patch
+
3. Configure qemu with
pushd qemu
- ./configure --enable-system --enable-profiler
+ ./configure --enable-system
popd
- Note that qemu will not compile with gcc4; if your system's
- default compiler is gcc4 then specify the path to gcc3 using
- e.g. --cc=gcc-3.3.6
+ Note that qemu will not compile with gcc4; if your system's
+ default compiler is gcc4 then specify the path to gcc3 using
+ e.g. --cc=gcc-3.3.6
4. Build qemu:
make -C qemu
8. Build Etherboot floppy disk images and pad to 1.44MB
pushd ../../src
- make bin/rtl8139.dsk
- ./util/dskpad.pl bin/rtl8139.dsk
+ make bin/rtl8139.pdsk
popd
9. Start qemu
./qemu/i386-softmmu/qemu -L qemu/pc-bios \
-net nic,model=rtl8139 -net tap,ifname=tap0 \
- -boot a -fda ../../src/bin/rtl8139.dsk
+ -boot a -fda ../../src/bin/rtl8139.pdsk
You should see qemu start up, load up Etherboot and attempt to boot
from the network.