Linux kernel 从内核获取符号地址';s符号表

Linux kernel 从内核获取符号地址';s符号表,linux-kernel,netfilter,Linux Kernel,Netfilter,现在如果我想使用这个函数,我需要初始化一个指向这个函数的指针 要做到这一点,我需要函数的地址 我已经看到,从用户空间中,我可以读取/proc/kallsyms来获取符号的地址。它们是否存在类似的机制,我可以读取符号表以从内核空间提取符号的地址?根据您的内核版本,您可以使用和/或从内核空间中运行的代码中获取符号的地址 只有在内核配置中设置了CONFIG\u KALLSYMS时,这才有效 请注意,我不建议查找要调用的函数的地址,除非没有更好的方法(内核API)来执行您想要的操作。尽管如此,如果没有其

现在如果我想使用这个函数,我需要初始化一个指向这个函数的指针

要做到这一点,我需要函数的地址


我已经看到,从用户空间中,我可以读取
/proc/kallsyms
来获取符号的地址。它们是否存在类似的机制,我可以读取符号表以从内核空间提取符号的地址?

根据您的内核版本,您可以使用和/或从内核空间中运行的代码中获取符号的地址

只有在内核配置中设置了
CONFIG\u KALLSYMS
时,这才有效

请注意,我不建议查找要调用的函数的地址,除非没有更好的方法(内核API)来执行您想要的操作。尽管如此,如果没有其他帮助的话,kallsyms_*()API可能是一条出路

arif@khost:~/src/linux$ global -x ip_rcv_finish
ip_rcv_finish     319 net/ipv4/ip_input.c static int ip_rcv_finish(struct sk_buff *skb)