看了下各位大神的推荐路线,总结如下: 0. 跟着项目走: 1. 学会用.熟练用linux系统: 2. Linux Kernel Development. 3. Understanding the Linux Kernel. 4. Linux Device Driver. 5. 找一个感兴趣的子系统研究,认真研究代码,这里的建议是可以看提交的每个change.比如网络子系统:Understanding linux network internels. “严谨而细致的仔细分析它的代码,不懂的地方就通
本系列文章主要写我在阅读Linux内核过程中,关注的比较难以理解但又设计巧妙的代码片段(不关注OS的各个模块的设计思想,此部分我准备写在“深入理解Linux Kernel” 系列文章中),一来通过内核代码复习一下C语言及汇编语言的语法,二来学习内核开发大牛们书写代码的风格及思路. 在内核文件 include/linux/bug.h中,有下面两行的宏定义: 1 2 3 4 5 6 /* Force a compilation error if condition is true, but al