全部博文(327)
分类: LINUX
2009-06-17 20:30:38
chinaunix网友2009-11-07 14:09:52
个人看法,kernel这个东西入门难,进步快.何为入门?mm和vfs,这两块懂了就算入门. kernel的其他部分,都或多或少的依托于这两个东西而存在.不懂这俩,只能在具体细节上去考虑问题,而不是站在全局的立场上. 一般的学习方法无非两种,抽象至具体,或者具体至抽象. 我们上学的教科书上一般最开始都会给你一个全局的概括,然后逐步细化. 读kernel相反,是读了大量具体的代码之后,才可以占在全局的角度去分析.是量变引起质变,由具体至抽象的过程. 如果通过阅读代码,而不是通过一些假大空的书籍,能明确的回答出mm和vfs的设计需求,那么恭喜,你已经站在了全局的角度,迈出了葵花宝典中最艰难的"必先自宫"这第一步,以后都好办.脑子里有了kernel的基本框架后,再遇到kernel中未曾读过的子系统时,就可以先google下这个子系统的基本原理是什么,要实现些什么.然后自己考虑一下自己会怎样实现这个功能,然后再对照着看代码,看人家怎么实现的,到底孰优孰劣. 这么搞的话,我估计根本不会遇到看完一遍又忘了的情况.退一万步,即使忘了又怎么样,老子写不出好的来,次的还写不出来吗?不就是这个功能