Bochs running OS returned error

I am working on an OS programming project called pintos. It runs on bochs by following the commandpintos run nameOfProcess

And here is the error message I am getting

Writing command line to /tmp/eKW3NMXoGT.dsk...
squish-pty bochs -q
========================================================================
                     Bochs x86 Emulator 2.5.1.svn
             Built from SVN snapshot, after release 2.5.1
                  Compiled on Apr  6 2012 at 19:37:19
========================================================================
00000000000i[     ] reading configuration from bochsrc.txt
00000000000i[     ] installing x module as the Bochs GUI
00000000000i[     ] using log file bochsout.txt
Next at t=0
Writing command line to /tmp/eKW3NMXoGT.dsk...
squish-pty bochs -q
========================================================================
                     Bochs x86 Emulator 2.5.1.svn
             Built from SVN snapshot, after release 2.5.1
                  Compiled on Apr  6 2012 at 19:37:19
========================================================================
00000000000i[     ] reading configuration from bochsrc.txt
00000000000i[     ] installing x module as the Bochs GUI
00000000000i[     ] using log file bochsout.txt
Next at t=0
(0) [0x00000000fffffff0] f000:fff0 (unk. ctxt): (invalid)                 ; ffff
<bochs:1> fgets() returned ERROR.
debugger interrupt request was 0
(0).[0] [0x00000000fffffff0] f000:fff0 (unk. ctxt): (invalid)                 ; ffff
(0) [0x00000000fffffff0] f000:fff0 (unk. ctxt): (invalid)                 ; ffff
<bochs:1> fgets() returned ERROR.
debugger interrupt request was 0
(0).[0] [0x00000000fffffff0] f000:fff0 (unk. ctxt): (invalid)                 ; ffff

      

Also my bochsrc.txt

romimage: file=$BXSHARE/BIOS-bochs-latest, address=0xe0000  
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
boot: disk
cpu: ips=1000000
megs: 4
log: bochsout.txt
panic: action=fatal
clock: sync=none, time0=0
ata0-master: type=disk, path=/tmp/eKW3NMXoGT.dsk, mode=flat, cylinders=1, heads=16, spt=63, translation=none
com1: enabled=1, mode=term, dev=/dev/stdout

      

Bochs was built from source with additional configs on my Ubuntu 11.04

+3


source to share


2 answers


I had the same problem and asked a question on the OSDev forum . I used file = $ BXSHARE / BIOS-bochs-legacy because I need 64K BIOS. It didn't work:

romimage: file = $ BXSHARE / BIOS-bochs-legacy, address = 0xf0000

in the .bochsrc file. And it works without the "address = 0xf0000" part.

Try deleting the BIOS start address here:



romimage: file = $ BXSHARE / BIOS-bochs-latest, address = 0xe0000

Just leave:

romimage: file = $ BXSHARE / BIOS-bochs-latest

in the bochsrc.txt file

+4


source


Install qemu instead of bosch:

sudo apt-get install qemu

      

If qemu version is latest you need to create simbolyc link from "qemu-system-i386" to "qemu"



sudo ln -s /usr/bin/qemu-system-i386 /usr/bin/qemu

      

If the qemu version is not 1.0, you do not need to do this. Now you can start Pintos with qemu, for example:

pintos --qemu -- run alarm-multiple

      

+2


source







All Articles