0

我有一个内核映像,想用 kgdb 进行调试。.config也不可用,否则我可以检查其中的标志。

/proc/sys/文件夹中也没有关于 kgdb 的条目。

有什么方法可以检查该图像是否启用了 kgdb?

4

1 回答 1

2

如果您的内核映像是使用选项编译的

CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y

/proc/config.gz然后您可以从或通过使用获取内核映像的配置

/pathtokernelsource/scripts/extract-ikconfig pathtokernelimage > /tmp/config

从那里您可以搜索CONFIG_KGDB使用 grep 或 zgrep,具体取决于您查看的是压缩的还是未压缩的配置文件。

/pathtokernelsource/scripts/extract-vmlinux pathtokernelimage > /tmp/vmlinux还将从映像中提取 vmlinux 可执行文件。

如果这有符号,您可以在该文件的 nm 输出中或在 System.map 中搜索您的内核映像中的 kgdb_arch_init 或 kgdb_arch_*,正如Mats Petersson在评论中提到的那样。

于 2012-12-26T16:52:05.323 回答