我正在开发一个名为pintos的OS编程项目。它在命令pintos run nameOfProcess
这是我收到的错误消息
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
也是我的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是在我的Ubuntu 11.04
上使用额外配置从源代码构建的答案 0 :(得分:4)
我遇到了同样的问题,我问了question on OSDev forum。 我使用file = $ BXSHARE / BIOS-bochs-legacy因为我需要64K BIOS。它无效:
<。>在.bochsrc文件中。它没有“address = 0xf0000”部分。romimage:file = $ BXSHARE / BIOS-bochs-legacy,address = 0xf0000
尝试删除BIOS的起始地址:
romimage:file = $ BXSHARE / BIOS-bochs-latest,address = 0xe0000
离开:
在你的bochsrc.txt 中romimage:file = $ BXSHARE / BIOS-bochs-latest
答案 1 :(得分:2)
安装qemu而不是bosch:
sudo apt-get install qemu
如果qemu的版本是最近的,那么你需要创建一个从“qemu-system-i386”到“qemu”的simbolyc链接
sudo ln -s /usr/bin/qemu-system-i386 /usr/bin/qemu
如果qemu的版本小于1.0,则不需要这样做。现在您可以使用qemu运行Pintos,例如:
pintos --qemu -- run alarm-multiple