- 现在自己的书架上以后lkd2+ldd3+情景分析,再加上它ulk3,书架的linux kernel的四库全书已经凑齐,很充实。
- lkd2:属于在总体上给你一个轮廓和框架;先看一遍有个总体把握,过后再精读;
- ldd3:工作时必不可少的书籍,我们组就买了3本人手一本,已经翻烂了,属于实践的好书;
- 情景分析:太厚了,而且是2.4的,不过很详细;
- ulk3:经典中的经典,读3遍以上;
- 小结:
- 掌握linux内核:理论+实践
- lkd2,ulk3属于理论的,要精读,尤其后者;
- ldd3属于实践部分;
- 情景分析建议当字典用;
- 最后read the fucking source code!
- enjoy!
注释:
lkd2 =《Linux Kernel Development (2nd Edition)》= 《LINUX内核设计与实现》
ulk3 = 《Understanding Linux Kernel (3rd Edition)》 = 《深入理解Linux内核》
ldd3 = 《Linux Device Development (3rd Edition)》= 《LINUX设备驱动程序》
情景分析 = 《LINUX内核源代码情景分析》
==================================================================
国内已经闻名已经久的四本Linux内核著作:
《Linux内核原代码情景分析》、《Linux内核设计与实现》、《深入理解Linux内核》、《Linux设备驱动程序》
==================================================================
还有个很重要的问题:怎样浏览内核源代码。有的朋友喜欢在Windows上工作,用Source Insight;有的在Linux, 用 Source Navigator;还有专门浏览源代码的软件,象lxr(Linux Cross Reference);还有用 ctags/ectags/cscope等,这些都是很优秀的软件。
推荐水木的KernelTech版,置底的FAQ里有
a.《Linux Device Drivers, 2nd Edition》,有中文译本
b.《Understanding the Linux Kernel, 3nd Edition》
c.《Linux内核源代码情景分析》,分上下两册
d.《边干边学-Linux内核指导》
e.《Linux内核2.4版源代码分析大全》
f.《Linux Kernel Development》
g.《IA-64 Linux Kernel: Design and Implementation》
注:a电子版可在http://www.oreilly.com/catalog/linuxdrive2/下载;
f和g比较新,在国内比较难买到。
h./Documentation/DocBook & /Documentation/kernel-docs.txt
在windows下通常使用source insight阅读源代码,在linux下用Cscope+emacs。