如何高效学习linux内核
很多人在学习linux内核过程中容易犯的一个极其严重路线错误:对linux几乎不懂就开始学习内核。我个人推荐一个学习路线是:使用linux—〉linxu系统编程开发---〉驱动开发和分析linux内核。而我差不多相反,实际上你不会使用linux也可以学习内核,但是如果你懂了这些东西学习更有效率。 如果你是喜欢钻研的那你进入内核会满足你的欲望。同时对你以后的嵌入式系统的开发有很好的影响。如果你想从事嵌入式linux系统开发,最好对内核有所了解。如果仅仅是做应用开发没有必要。我打个比喻:c、c++、java等语言是武林中的某个武林派别的话,如什么拳法,什么刀法等,那么linux内核应该是一个人的内功的反应。 看内核期间是个非常痛苦的过程,看情景分析有种在森林中找出路,其间我组织了一些同学学习内核,几乎没有几个能**下来的。我认为我是**下来了。情景分析在看第一、第二遍是几乎没有摸到门道,我分析有三个方面的原因:1、自己的基础差,这是最关键的。2、内核本身很难。3、没有交流和高人指点。到了第三遍时我才摸到门,才差不多知道个linux的大概脉络,很多细节也是稀里糊涂。 下面是我推荐的学习linux内核的重要书籍: Linux内核 1、《深入理解Linux内核》(第三版) 2、《Linux内核源代码情景分析》毛德操 胡希明著 有软件功底的话,把源码情景分析多看两遍就差不多可以研究kernel了 从init/main.c开始哈。brandnew 发表于 2012-12-3 22:10 static/image/common/back.gif
从init/main.c开始哈。
我是从Head.S开始的,可是到init/main.c就看不动了。linux是由多个子系统拼组起来的庞大系统,而main.c承担了各个子系统的初始化工作,要是能将mian.c彻底搞明白基本要对各个子系统有所了解,这很不容易。所以,我现在从单个子系统学起。:lol 还有很长的路~唉,都老了 才入门而已 才开始,路还很漫长啊 08只能不断看代码,反复看书 08aa只能不断看代码,反复看书 08宪章多写代码 还没开始,才学到linux环境编程 只是开始看《深入理解linux内核》,看第一遍呢,能看懂的不多啊!源代码还不敢看。想先了解内核怎么工作的,再看源码怎么实现相应功能的,不知道这样行不行啊? 我觉得LS的方法是可以的 真相只有一个,答案尽在源码、、、 <<Linux内核设计与实现>> 这本书怎么样? 请问楼主,你看的是这几本书,还是内核源代码? 第一步看啥,鸟哥的linux私房菜基础怎样:lol
页:
[1]