我写了一个样本hello.ko内核模块:
#include <linux/module.h> /* Needed by all modules */
#include <linux/kernel.h> /* Needed for KERN_INFO */
int init_module(void)
{
printk(KERN_INFO "Hello world.\n");
return 0;
}
void cleanup_module(void)
{
printk(KERN_INFO "Goodbye world 1.\n");
}
在这里,我曾用“printk的”方法,它是一个内核API被Linux露出。 我可以看到在Linux中“的/ proc / kallsyms”导出的符号。 我很好奇,想知道怎么做的gcc / LD链接称为内核API? 请问GCC / LD从“的/ proc / kallsyms”或其他文件,并执行链接获取内核方法的地址? 如果是的话,怎么办GCC / LD了解吗? 我不能告诉任何选项。