Linux 手册页的第 2 节包含system calls
.
找到这个链接后,我说“好的!我使用这个参考来开发每个模块,它是完整的”。
但似乎我不能使用本节的某些功能(如bind(2)
)。包含所需的标头(如<sys/socket.h>
)后,模块编译失败。
第 2 节中没有列出一些函数/宏printk
。很多人使用 Linux API,我找不到任何官方参考(就像printk
)。我不知道他们是如何找到这些功能的?(可能是通过阅读内核的整个源代码而不是阅读任何参考)
一些功能,如memset
第 3 节(用户空间库)中描述的,但内核模块开发人员可以使用它而不会出现任何错误!
在开发可加载内核模块时,我在哪里可以找到可用头文件和函数的完整参考?(类似于 MSDN 和 WINDDK 参考)
#include <linux/init.h>
#include <linux/module.h>
/* A complete list of availabe headers and functions is missing! */
static int my_init(void)
{
return 0;
}
static void my_exit(void)
{
return;
}
module_init(my_init);
module_exit(my_exit);