2
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

Organization

カーネルデバッグで使うQEMUオプションチートシート

English

QEMUのgdbserver機能でNetBSD kernelをデバッグする で使うQEMUオプションのまとめ

Sec.: sections in qemu-doc(1)

Sec. Option Details
2.3.1 -smp 4 仮想CPUコア数4
2.3.1 -m 256 メモリ256MiB
2.3.2 -hda netbsd.qcow2 第1ハードディスク: netbsd.qcow2
2.3.3 -cdrom netbsd.iso CD-ROM: netbsd.iso
2.3.4 -display curses VGAでなくcursesディスプレイを使う; QEMUを終了するにはQEMU monitor に接続して q
2.3.4 -display none VGAディスプレイ非表示
2.3.4 -nographic -display none + -parallel null(-parallel が指定されていない場合) + -serial mon:stdio(-serial-monitor も指定されていない場合; ドキュメントに書かれていないのでQEMUをデバッグして調べた
2.3.6 -netdev user,id=n1,hostfwd=tcp::10022-:22 -device e1000,netdev=n1 user mode network stack(VirtualBoxで言うNAT Network ); localhost:10022をゲストのポート22に転送する
2.3.6 -nic user,hostfwd=tcp::10022-:22 上と等価、QEMU 2.12以降で使える
2.3.11 -serial telnet::5555,server,nowait シリアルコンソール (com0) を使う場合に telnet localhost 5555 で接続できる
2.3.11 -monitor telnet::5556,server,nowait telnet localhost 5556 でQEMU monitorに接続できる
2.3.11 -serial mon:telnet::5555,server,nowait telnet localhost 5555 でシリアルコンソールとQEMU monitorの両方に接続できる; Ctrl-a h のヘルプ参照
2.3.11 -serial mon:stdio ターミナルにシリアルコンソールとQEMU monitorを表示する; Ctrl-a h のヘルプ参照
2.3.11 -S gdbserverへのコネクションがあるまでマシンの実行を止める
2.3.11 -gdb tcp::1234 ポート1234でgdbserverをlistenさせる
2.3.11 -s -gdb tcp::1234 と等価
2.3.11 -enable-kvm (Linuxのみ)KVM有効化
2.3.11 -no-reboot reboot コマンドで再起動せずにQEMUを終了する
2.3.11 -daemonize QEMUをデーモン化する。ターミナルを終了しても動き続けるので長時間動かす場合に便利。
2.3.11 -rtc base=utc 時刻補正(これがないとtimezoneをAsia/Tokyoにしたときに9時間ずれる)

Linux固有のオプション(-kernel など)も追記予定

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
2
Help us understand the problem. What are the problem?