LoginSignup
3

More than 3 years have passed since last update.

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

Last updated at Posted at 2018-11-22

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 など)も追記予定

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
3