适用于 3.x 版本的 Linux 内核编程手册

Tig*_*yan 2 c linux linux-kernel

I'm Trying to develop linux kernel module for my own server. I have a Ubuntu with linux kernel 3.4, but I can't find any books or tutorials for developing modules on 3.x versions, all tutorials and books are for 2.x versions.
And the most part of code not compiling on 3.4 version, specially kernel threads parts.

Do you know anything that would be useful to understand 3.x module development ?

Thanks.

小智 5

在内核工作原理方面,2.6.32+ 和 3.x 之间没有太大区别。但是,是的,函数名称和 API 会不时更改。这就是为什么书籍一旦出版就已经过时的原因。这就是为什么我可以推荐http://kernelnewbies.org/

类似的问题已经回答了:

关于内核 3.x 上的设备驱动程序编程的文档

Linux 设备驱动程序第 3 版和 3.2 内核

最好的文档是 Linux 内核源代码本身,因为它变化如此之快。代码中有很多注释,您真的应该查看“文档”目录。

将示例移植到更新的版本不是一个很好的练习吗?

非常重要的是跟上主线开发的变化列表:http : //kernelnewbies.org/LinuxVersions

如果他们更改 API,他们也会记录转换。看看驱动程序做与您想要实现的事情类似的事情。它们是如何工作的?他们对 API 更改有何反应?...

订阅相关的 Linux 内核邮件列表,并向活跃的内核开发人员寻求帮助解决更大的问题。