我本可以轻松地在这本书中再挤进几章。我可以添加关于创建新文件系统,或关于添加新协议栈的章节(仿佛有这个必要一样 -- 你必须深入地下才能找到一个 Linux 不支持的协议栈)。我可以添加对我们尚未触及的内核机制的解释,例如引导或磁盘接口。
然而,我选择不这样做。我写这本书的目的是为了引导读者进入内核模块编程的奥秘,并教授用于此目的的常用技术。对于那些对内核编程真正感兴趣的人,我推荐 Juan-Mariano de Goyeneche 的内核资源列表。此外,正如 Linus 所说,学习内核的最佳方法是阅读源代码。
如果您对更多简短的内核模块示例感兴趣,我推荐 Phrack 杂志。即使您对安全性不感兴趣(但作为程序员您应该感兴趣),那里的内核模块也是您可以在内核内部执行的操作的良好示例,并且它们足够简短,不需要花费太多精力来理解。
我希望我帮助了您追求成为一名更优秀的程序员,或者至少通过技术获得乐趣。而且,如果您确实编写了有用的内核模块,我希望您在 GPL 许可下发布它们,这样我也能使用它们。