3

pintos という OS プログラミング プロジェクトに取り組んでいます。コマンドに従ってbochsで実行されます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 で追加の構成を使用してソースからビルドされました

4

2 に答える 2

5

私は同じ問題を抱えていたので、OSDev フォーラムで質問しました。64K BIOS が必要だったので、file=$BXSHARE/BIOS-bochs-legacy を使用しました。それは動作しませんでした:

romimage: ファイル=$BXSHARE/BIOS-bochs-legacy、アドレス=0xf0000

.bochsrc ファイル内。また、「address=0xf0000」の部分がなくても動作します。

ここで BIOS の開始アドレスを削除してみてください。

romimage: ファイル=$BXSHARE/BIOS-bochs-latest、アドレス=0xe0000

ただ残してください:

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

bochsrc.txt に

于 2013-09-29T10:11:44.847 に答える
2

bosch の代わりに qemu をインストールします。

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
于 2012-09-26T19:01:53.870 に答える