1.《Linux内核设计与实现》
本书重在原理。适合入门的最佳图书。作者是为2.6内核加入了抢占的人,对调度部分非常精通,而调度是整个系统的核心,因此本书是很权威的。
2.《深入理解Linux内核》
此书比上一本多了些细节。是Linux内核黑客在推荐图书时的首选。写的比较简单易懂,适合刚刚接触LINUX内核的。此书图表很多,形象地给出了关键数据结构的定义,与《Linux内核源代码情景分析》相比,本书内容紧凑,不会一个问题讲解动辄上百页,有提纲挈领的功用,但是深度上要逊于《Linux内核源代码情景分析》。
3.《LINUX设备驱动程序(第3版)》
这书强调动手实践!但它是讲解“设备驱动”的,不是最核心的东西,而且有些东西没硬件的话无法实践,可能更适合驱动开发的程序员吧,其中关于同步与互斥、内存分配的部分,感觉很不错。
4.《Linux内核源代码情景分析》
好,很经典,是浙大教授毛德操写的,可惜成书于2001年之后一直没有更新。分上下册。很多是基于2.4内核讲解的需要注意。如果学习的话也建议学习2.6,2.6跟2.4比发生了很多显著改善,应该学习的。全书内容博大精深,不是非常好懂,对细节问题描述比较清晰。但是感觉对内核的整体感觉不够强。另外缺少网络部分的分析。觉得不是很适合初学者。
5.《Linux内核源代码分析》
点评:面对中高级,这本书很好,对了解操作系统是一本不可多得的好书。
6. 《LINUXKERNEL技术手册》
参考手册,很薄,值得一看。
7.《深入Linux内核架构》
这本书针对的是比较新的内核版本2.6.24;内容比较全面,深入浅出。如果没有对Linux内核的初步结构的认识,那么会看得比较吃力。建议可以一边去翻在国内已经闻名已经久的四本Linux内核著作(《Linux内核原代码情景分析》、《Linux内核设计与实现》、《深入理解Linux内核》、《Linux设备驱动程序》),再一边看这本书,把这本书当作一个补充或者当作一个内核框架图谱说明书来阅读,收效会更好。
8.《Linux内核完全注释》
主要描述和注释了Linux0.11内核全部源代码。对于初学Linux内核操作系统的人来讲,该书能够引领读者快速入门,并且能全面了解一个简单操作系统的工作机理。对于进一步学习现在的Linux内核具有非常大的指导作用。对于学习嵌入式应用的技术人员来讲,通过《完全注释》一书的学习也能迅速融入嵌入式应用领域。
9.《Orange S:一个操作系统的实现》
从只有二十行的引导扇区代码出发,一步一步地向读者呈现一个操作系统框架的完成过程。
10.《30天自制操作系统》
小日本写的,不过确实写的内容很好,讲怎么自己一步步写操作系统,从汇编到C都有涉及。
以下是另一行业高手推荐书籍:
第一:《Linux内核设计与实现》
简称LKD,从入门开始,介绍了诸如进程管理、系统调用、中断和中断处理程序、内核同步、时间管理、内存管理、地址空间、调试技术等方面,内容比较浅显易懂,个人认为是内核新人首先必读的书籍。新人得有此书,足矣!
第二:《深入理解Linux内核》
简称ULK,相比于LKD的内容不够深入、覆盖面不广,ULK要深入全面得多。前面这两本,一本提纲挈领,一本全面深入。
第三:《Linux设备驱动程序》
简称LDD,驱动开发者都要人手一本了。
第四:《深入理解Linux虚拟内存管理》
简称LVMM,是一本介绍Linux虚拟内存管理机制的书。如果你希望深入的研究Linux的内存管理子系统,仔细的研读这本书无疑是最好的选择。
第五:《深入理解LINUX网络内幕》
一本讲解网络子系统实现的书,通过这本书,我们可以了解到Linux内核是如何实现复杂的网络功能的。
以上5本书籍被作者堪称是久经考验的神作(概括为“2+1+2”,第一个2是指2本全面讲解内核的书,中间的1指1本讲解驱动开发的书,后面的2则指2本有关内核具体子系统的书,希望这5本书籍能同样对你有用。
原文:http://my.oschina.net/wxfvm/blog/378247