1《LINUX程序设计》基础很重要2《UNIX环境中级编程》还是基础,假如你是搞UNIX/Linux环境下的应用程序编程,这么就看3,《Linux内核设计与实现》这本书讲解通俗易懂,全书没有列出一条汇编句子,而且给出了整个Linux操作系统2.6内核的概观,使你能通过
1《LINUX程序设计》 基础很重要 2《UNIX环境高级编程》
还是基础 ,如果你是搞UNIX/Linux环境下的应用程序编程,那么就看3,《Linux内核设计与实现》
这本书讲解通俗易懂,全书没有列出一条汇编句子,而且给出了整个Linux操作系统2.6内核的概观,使你能通过阅读迅速获得一个overview。并且对内核中较为混乱的部份(如下半部),它的讲解是最透彻的。对没怎样深入内核的人来说,这是强烈推荐的一本书。
翻译:翻译水平、负责任程度都不错,而且彩印存在一些错误。买了此书的同学可以参考我在Linux中级应用版的《Linux内核设计与实现英文版勘误》:
另外,此书2005年有了第二版,目前尚无中译本面世
4《Linux内核源代码情境剖析》上、下
本书是基于2.4.0内核的,比较早,也没据说会出第二版。下册讲解显存管理、中断、异常与系统调用、进程控制、文件系统与传统UnixIPC;上册讲解socket、设备驱动、SMP和引导。关于这套书的评价褒贬不一,我个人觉得其深度是同类专著中最优秀的。本书基于IntelIA32体系linux内核源代码情景分析 豆瓣linux apache 虚拟主机,因为长度大,好多体系上的知识都捎带讲解了,所以假如你想深入了解内核的工作机制而又不十分熟悉IntelCPU的体系构造,本书是最合适的。缺点是:版本较老,没有TCP/IP合同栈部份(它讲的socket只是Unix域合同的),图表太少,不适宜初学者入门
5,《深入理解Linux内核》第二版
此书C版的converse兄送了我一本第一版,因而就没买第二版linux内核源代码情景分析 豆瓣,比较懊悔。因而只就第一版说一说,第一版基于2.2,第二版2.4。我见O'Reilly官方主页上说第三版的中文版将于2005年11月出版,也不知俺们何时才会看到。此书图表好多,形象地给出了关键数据结构的定义,与《情景剖析》相比,本书内容紧凑linux开源软件,不会一个问题讲解动辄上百页,有提纲挈领的功用,并且深度上要逊于《情景剖析》
6,其它的几本书。
i《Linux内核源代码完全注释》
是同济大学的博士生赵炯的著作,讲解0.1Linux内核,我没买也没看,有看过的朋友说一说。ii《Linux设备驱动》(第三版)(偏硬件)
《精通linux驱动程序开发》 (偏软件)
如果做Linux下设备驱动程序开发,就看 iii 《orange's 一个操作系统的实现》最能完整理解操作系统,即使是把minix和linux融合一起了,弄成一个几十k的操作系统,个人觉得是入门的首选。