我正在嘗試使用 調試 Linux 內核Virtualbox
,但無法使其工作。
這是我所做的。
使用以下配置編譯內核
CONFIG_HAVE_ARCH_KGDB=y CONFIG_KGDB=y CONFIG_KGDB_SERIAL_CONSOLE=y CONFIG_KGDB_TESTS=y CONFIG_KGDB_TESTS_ON_BOOT=y CONFIG_KGDB_TESTS_BOOT_STRING="V1F100" CONFIG_KGDB_LOW_LEVEL_TRAP=y CONFIG_KGDB_KDB=y CONFIG_KDB_DEFAULT_ENABLE=0x1 CONFIG_KDB_KEYBOARD=y CONFIG_KDB_CONTINUE_CATASTROPHIC=0 CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
安裝編譯好的核心。
新增啟動參數
kgdbwait kgdboc=ttyS1,115200
而且它不會等待KGDB
。但是,當我嘗試僅使用串行端口來獲取啟動過程輸出時,console=tty0 console=ttyS0,115200
它就可以工作了。
核心是Linux/x86 4.9.16 Kernel
(Kali linux)。