老宋谈linux 学习螺旋迭代法

第一阶段: 先形成整体轮廓,比如对Linux的进程、内存、I/O、驱动模型有一些基本的认识,开始写一些简单的内核模块,比如hello-world模块、globalmem、globalfifo这样的字符驱动,你一定要动手。这个时候你可以看的书是《Linux内核设计与实现》,还有驱动的书。

第二阶段:从事具体的工作,在某个子系统(无论是进程、内存、IO还是驱动)从事工作,加新的功能,修bug,发patch,加深对知识的理解。这阶段你如果有兴趣,也有耐心,可以读《深入理解Linux内核》、《深入Linux内核架构》这样的书,不过懒得看也没有关系,因为你工作的时候,会自然而然地自己进行代码分析。

第三阶段(回归第一阶段):你已经工作了一段时间,写了一些代码,修复了一些bug,提交了一些patch,然后你重新回来迭代整体的知识框架,搞清楚各个子系统内在的联系。这阶段你如果有兴趣可以读《深入理解Linux内核》、《深入Linux内核架构》这样的书,不过懒得看也没有关系,因为你的工作让你自己有了分析的能力。

第四阶段(回归第二阶段):从事具体的工作,在某个子系统(无论是进程、内存、IO还是驱动)从事工作,加新的功能,修bug,发patch,加深对知识的理解。这阶段你如果有兴趣可以读《深入理解Linux内核》、《深入Linux内核架构》这样的书,不过懒得看也没有关系,因为你的深入的工作,会让你自己具备了理清脉络和深入细节的能力。

你可能感兴趣的:(老宋谈linux 学习螺旋迭代法)