Как использовать DDD для отладки ядра локальной виртуальной машины Qemu?
Я хочу использовать GNU DDD (графическая оболочка gdb) для отладки ядра Linux, которое работает (в некоторых дистрибутивах) внутри qemu.
У меня есть образ vmlinux вне Qemu, и я запускаю Qemu с -s -S
, так что он действует как gdbserver (останавливается при запуске и ждет команды отладки). Теперь, как подключить DDD к этому gdbserver, используя локальный образ vmlinux?
Должен ли я просто открыть изображение и сказать gdb "target remote"?
2 ответа
Решение
Вы в основном ответили на свой вопрос - да, используйте команду target remote gdb в ddd для подключения:
$ gdb qemuKernelFile
(gdb) target remote localhost:1234
С небольшими изменениями вы можете использовать процедуру, подробно описанную здесь.
Картинка из этого урока: