我希望能够以编程方式找到加载linux内核的地址。如果那里有工具已经做到了,我愿意使用它们。但是,在内核构建期间检查PARAMS_PHYS
中的.config
字段不是一种选择。我怎么能这样做?
答案 0 :(得分:2)
你想从哪里找到它?从内核空间还是用户空间?如果要从用户空间获取它,可以解析/proc/iomem
:
cat /proc/iomem | grep "Kernel code"
01000000-0168b523 : Kernel code
如果你想从内核空间获取它,你可以__pa_symbol
宏返回给定符号的物理地址。在你的情况下,你需要做这样的事情:
__pa_symbol(_text)