内核---从Linux内核源码结构纵览内核

来源:互联网 发布:根域名服务器分布 编辑:程序博客网 时间:2024/06/08 00:04

从Linux内核源码结构纵览内核

---Architecture的子目录是各个CPU的架构的名字,为各种不同的CPU架构服务。虽然总体量很大,但对于关注x86和ARM来说,也只占很小一部分;

---driver目录分类为各种不同的设备驱动,而虽然设备驱动五花八门,但是他们的结构是高度相似的,读者可以根据工作需要阅读分析驱动代码。在理解Linux驱动架构的基础上,这个工作具有高度的重复性,可以在短时间内掌握驱动的精髓;

---内核中fs目录的分类。fs目录分为不同的文件系统;

因此,各种不同的文件系统都具有高度的重复部分,读者不需逐一分析所有的文件系统代码,因此只选择几种文件系统代码重点阅读即可。


内核学习和应用的四个阶段:

*起步阶段

基本从驱动入手,做过几个驱动,能够移植驱动到不同的平台,对驱动做一定的修改,裁剪内核,以适应具体需求;对Linux的BootLoader能够根据需求进行修改;

*熟练阶段

对内核的一个或几个部分比较熟悉,针对熟悉部分,进行深度的开发应用。比如对设备驱动相关的总线、设备、中断比较熟悉,并且可以进行深层次的开发。这阶段的特点对内核的理解还不够全面,需要时间积累增加对内核的整体把握

*高阶阶段

对内核的重要部分进行了比较深入的分析,这一阶段的特点是全面性,即使要学习内核某些新的重要特性,也能在短时间内迅速掌握重点

*终极阶段

此阶段是Linux内核维护人员所达到的水准,能开创性的工作,具有重大应用价值,国内达到此阶段的人非常少


总结

内核基础层是整个内核学习的基础。基础层的实现部分比较复杂,尤其是内存管理部分和进程调度基础层。但是应用这些基础层并不复杂,它们的应用API也比较稳定,各版本不会有太大变化,内核代码经常调用这些基础层的接口API。





原创粉丝点击