1 "Linux Program Design" Foundation is very important 2 "UNIX environment Advanced Programming" Or the Basics , if you're doing application programming in a unix/linux environment, then look at
3, "Linux kernel design and implementation"
This book is easy to understand, it does not list a compilation statement, but gives an overview of the entire Linux operating system 2.6 kernel, allowing you to quickly get a overview by reading. And the most confusing part of the kernel, such as the bottom half, is the most thorough explanation. This is a highly recommended book for those who do not go deep into the kernel.
Translation: the level of translation, responsibility is good, but there are some errors in printing. The friends who bought this book can refer to my Linux kernel design and implementation errata in the Linux Advanced Application Edition:
http://bbs.chinaunix.net/forum/viewtopic.php?t=541234
In addition, the book has a second edition in 2005, and there is no Chinese translation
4 "Linux kernel source code scenario analysis" up and down
This book is based on the 2.4.0 kernel, earlier, and did not hear the second edition. This volume explains memory management, interrupts, exceptions and system calls, process controls, file systems, and traditional UNIX IPC; The following book explains sockets, device drivers, SMP, and booting. The evaluation of this book is mixed, and I personally think the depth is the best of its kind. This book is based on the Intel IA32 system, because of the thickness of a lot of knowledge on the system is incidentally explained, so if you want to learn more about the kernel working mechanism and not very familiar with the Intel CPU architecture, this book is the most appropriate. The disadvantage is: The version is older, there is no TCP/IP protocol stack part (it speaks of the socket is only UNIX domain protocol), too few charts, not suitable for beginners to get started
5, "deep understanding of Linux kernel" second edition
This book C version of Converse Brother sent me a first edition, so I did not buy a second edition, more regret. So just say the first edition, the first version is based on 2.2, second edition 2.4. I see the official homepage of O ' Reilly that the English version of the third edition will be published in November 2005, and we don't know when we'll be able to see it. This book is a lot of diagrams, the definition of the key data structure, and "situational analysis" compared to the content of the book is compact, will not be a problem to explain the hundreds of pages, there is sketchy function, but in depth is inferior to "situational analysis"
6, some of the other books.
I "Linux kernel source code full comment"
Tongji University is a doctoral student Zhao Jiong's book, explaining the 0.1Linux kernel, I did not buy or see, have seen a friend said.
II "Linux device Driver" (third edition) (partial hardware) "Proficient in Linux driver development" (partial software)
If you do Linux under the device driver development, see III "Orange's an operating system implementation"
The most complete understanding of the operating system, although the integration of Minix and Linux together, into a dozens of K operating system, personally considered to be the first choice to get started.