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

时间:2015-02-20 14:39:57

标签: c linux linux-kernel

我正在尝试为自己的服务器开发linux内核模块。 我有一个带Linux内核3.4的Ubuntu,但是我找不到任何用于开发3.x版本模块的书籍或教程,所有教程和书籍都是针对2.x版本的。
并且大部分代码都没有在3.4版本上编译,特别是内核线程部分。

你知道什么对理解3.x模块开发有用吗?

感谢。

2 个答案:

答案 0 :(得分:4)

2.6.32+和3.x在内核工作原理的基础上没有太大区别。但是,函数名称和API会不时发生变化。这就是为什么书一旦发布就已经老了。这就是为什么我可以推荐http://kernelnewbies.org/

已经回答了类似的问题:

Documentation about device driver programming on kernel 3.x

Linux Device Drivers 3rd Ed and 3.2 kernel

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

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

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

如果他们更改了API,他们也会记录过渡。看看那些与你想要达到的目标相似的车手。他们是如何工作的?他们是如何对API变化做出反应的? ...

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

答案 1 :(得分:3)

您可以使用LDD(Linux设备驱动程序)作为参考,但它适用于2.x内核。您可以加入Eudyptula Challenge挑战内核开发学习和培训。还要记住一个非常好的参考,总是linux kernel source code