QEMUがうまく動かないよ!のときに読むページ

  • (by K, 2006.03.31)
  • いろいろQ&Aが集まったと思うので、ここにまとめておこうと思います。
  • ここで答えが見つからなければ、q_and_aへ!

質問と答え

  • 工事中

これで直るかもしれない?

  • 今までうまく行かなかった人は是非これを試して、改善したかどうかを下のコメント欄で教えてほしいです。

  • 修正方法: tolset/z_tools/qemu の中のMakefileを以下の内容に差し替える
    default :
        qemu-win.bat
  • さらに、 tolset/z_tools/qemu の中に qemu-win.bat というファイルを作り、以下の内容に編集しておきます。
    @set SDL_VIDEODRIVER=windib
    @set QEMU_AUDIO_DRV=none
    @set QEMU_AUDIO_LOG_TO_MONITOR=0
    qemu.exe -L . -m 32 -localtime -std-vga -fda fdimage0.bin

実機テストで代用

  • 「install」か「make install」でフロッピーディスクに保存して、そのディスクから起動することで実機テストができます。
  • もしくは「make」でディスクイメージを生成したあと、p.678の方法でCD-RWを作ってこのCDから起動します。これでも同様に実機テストができます(CD-Rでもいいですが、テストは何度もやることが多いので、お金がかかります)。
  • メリット:エミュレータではなく実機なので、エミュレータのバグなどに悩まされることがありません。もし誤動作があればそれは間違いなく自作中のプログラムの問題であって、エミュレータのバグではないのです。動作も大変高速です。
  • デメリット:手間がかかります。自作中のプログラムにバグがあった場合、実機が非常に大きな危険にさらされます。

他のエミュレータで代用

  • (この項目はまだ十分に確認できていません)
  • QEMU(のほかのバージョン)の場合:
  • bochsの場合:
    • http://hrb.osask.jp/bochs226.zip (471KB) をダウンロード。
      • これはtolsetにインストールしやすいように加工してあって、今の tolset/z_tools のqemuをqemu_nt等に改名し、さらにこのbochs226フォルダをあえてqemuと改名して tolset/z_tools の中に入れると、「make run」でbochs-2.2.6-win32が起動するようになります。
      • 特徴:たぶんQEMUよりもWinXPなどでうまく動作する可能性が高い。しかしQEMUと比べると非常に遅い。F12でマウスをエミュレータの中に入れたり出したりする。エミュレータの終了は画面上部のアイコン列の右端の「power」ポタンをクリックする。
  • VMwareの場合:
    • http://hrb.osask.jp/vmware.zip (2.12KB) をダウンロード。
      • これはtolsetにインストールしやすいように加工してあって、添付のドキュメントにしたがってVMwareをインストールした後に、今の tolset/z_tools のqemuをqemu_nt等に改名し、さらにこのvmwareフォルダをあえてqemuと改名して tolset/z_tools の中に入れると、「make run」でvmwareが起動するようになります。
      • 特徴:インストールは他と比べると少し手間が多いが、たぶんQEMUよりもWinXPなどでうまく動作する可能性が高い。QEMUと比べると動作が速い場合と遅い場合があるようだ(環境による?)。エミュレータが大きいこともあって、エミュレータ自体の起動と終了にはQEMUよりも長い時間がかかる。
  • VirtualPCの場合:
    • マイクロソフト社から発売中

  • いずれの場合もコマンドラインからフロッピーディスクイメージを起動する方法がわかれば、「run.bat」や「Makefile」をそれにあわせて書き換えることにより、「run」や「make run」ができるようになるかもしれません。しかしそれでも付録CDのQEMUと動作が違うことがあるかもしれません。それはご了承ください。
    • もし本書の記述との動作の食い違いがあった場合、正しいのはどちらかということに興味があるかもしれませんが、いついかなることがあっても、正しいのは実機の動作に近いほうであります。エミュレータというのは実機をどれだけうまく真似られるか、という観点で作成されているものなので、実機と違えば、たとえ本書と同じ動作だとしても、正しい動作だとはいえないでしょう。

こめんと欄

  • qemuとbochsに関してはtolsetに追加できるような形に整えたものをこちらで用意できたらなと思っています。 -- K 2006-03-31 (金) 15:30:45
  • vmwareに関してはuchanさんがやってくれるそうなので、そちらに期待中です。 -- K 2006-03-31 (金) 15:31:15
  • qemuについては、マシンによって動く場合と動かない場合があるみたいです。VGAカードが高機能だと動かない場合が多い。実験方法は本家のQEMUを落としてQEMU-WINバッチを走らせて正しくLinuxが立ち上がってくればOK、駄目だと環境変数を変えてもNGみたいです。その場合はVMWareを使いましょう。動く確率はかなり高いです。(というか、今のところ動かないマシンはなかった) -- kuni 2006-04-21 (金) 12:23:57
  • VGAカードの点はあまり関係なかったみたいです。サウンドカードの設定が原因で動かない場合があるみたいです。上の設定で、std-vgaの設定は無いほうが動く確率は高いかも?? -- kuni 2006-04-21 (金) 13:54:03
  • QEMUの方が2倍以上速かったです。機械とバージョンでこの辺は変わるので、エミュレータOSの開発って大変そうですね。 -- kuni 2006-04-26 (水) 15:06:37
  • 間違って、リターンキーを押してしまった。QEMU -- kuni 2006-04-26 (水) 15:07:35
  • QEMUの設定してみました。Hiyosでは問題なく動いています。CDが家なので結果はまた別に。VMWareでも動かない場合がありました。AOpenにDuoを乗せたやつで、マウスをクリックすると固まってリセットするしかなかった。VMWareが速いとありますが、QEMU(0.8.0)では...↑です。 -- kuni 2006-04-26 (水) 15:11:55
  • ご報告ありがとうございます。ご報告に基づいてQEMUとVMwareの速度の関係についての説明を修正しました。 -- K 2006-04-26 (水) 17:43:40
  • QEMUの問題。17ページのhello,worldについて、フロッピーディスクでは成功したのですが、QEMUでは文字の色が異常にカラフルで読めませんでした。sdl.dllを差し替え(必要なかったかも)、「これで直るかもしれない?」のとおり変更すると、17ページの写真のとおりになりました。PCは富士通FMV-6800CX6、OSはXP SP2です。すごく楽しいけど、時間がなかなか取れないので30日は無理かなあ。ゆっくりやります。 -- spitzit 2006-05-06 (土) 15:19:48
  • 上記の方法でいろいろやってみましたがmake installとmake runが動きません。ファイルは作成されます。環境はWindows2000Professional ServicePack4です。以下のメッセージが表示されます。make.exe[2]:***[haribote.sys]Error1 -- 名無しさん 2006-06-08 (木) 20:26:52
  • 上記の続きです。make.exe[2]:Leaving directory 'd:/OS作成/3日目/tolset/harib00j' make.exe[1]:***[img]Error 2 make.exe[1]:Leaving directory 'D:/OS作成/3日目/tolset/harib00j' ..\z_tools\make.exe: ***[run]Error 2 -- 名無しさん 2006-06-08 (木) 20:31:09
  • make.exe[2]:***[haribote.sys]Error1というメッセージから、haribote.sysが存在しない(作成されていない)のではないだろうかという可能性が考えられます。色々試してみたところ、makeを実行して作成されたharibote.sysとharibote.imgを削除した後、フォルダを書き込み不可にしてmake runしてみると同じエラーメッセージが表示されました。 -- 名無しさん 2006-06-09 (金) 00:57:04
  • すいません。「make」を実行しても上と同じメッセージ(..\z_tools\make.exe・・・のところの[run]が[default]に変わっただけでharibote.sys,haribote.imgが作成されません。 -- 名無しさん 2006-06-09 (金) 12:39:36
  • qemuの問題ではなさそうなので、q_and_aに話を戻します。 -- 名無しさん 2006-06-09 (金) 14:05:17
  • 僕の場合、「make run」でエラーになった後、「run」で動作します。 -- Rolly 2006-12-11 (月) 13:45:28
  • VirtualPCは無償でMSのホームページで配布されてますよ。ただ、9x系は使用できませんが・・・ -- 名無しさん 2007-07-21 (土) 19:43:11
  • gfdsrtyttrtuytriuyyryuytt4 -- えれひゅうじゅう 2007-08-30 (木) 09:22:42
  • qemuですが98で使うと画面が半分になってしまいますが対処法ありますか? -- anzy 2008-06-28 (土) 17:13:23

コメントお名前NameLink

リロード   新規 編集 差分 添付   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Last-modified: 2010-03-08 (月) 12:02:03 (3363d)