动态查找加载内核的地址

时间:2015-06-05 12:11:44

标签: linux linux-kernel

我希望能够以编程方式找到加载linux内核的地址。如果那里有工具已经做到了,我愿意使用它们。但是,在内核构建期间检查PARAMS_PHYS中的.config字段不是一种选择。我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

你想从哪里找到它?从内核空间还是用户空间?如果要从用户空间获取它,可以解析/proc/iomem

的输出
cat /proc/iomem | grep "Kernel code"
01000000-0168b523 : Kernel code

如果你想从内核空间获取它,你可以__pa_symbol宏返回给定符号的物理地址。在你的情况下,你需要做这样的事情:

__pa_symbol(_text)