- 出版社: Addison-Wesley Professional; 3 (2010年7月2日)
- 丛书名: Developer's Library
- 平装: 480页
- 语种： 英语
- ISBN: 0672329468
- 条形码: 9780672329463, 0752063329467
- 商品尺寸: 17.8 x 3.6 x 22.9 cm
- 商品重量: 776 g
- ASIN: 0672329468
- 用户评分: 1 条商品评论
- 亚马逊热销商品排名: 图书商品里排第498,162名 (查看图书商品销售排行榜)
Linux Kernel Development (3rd Edition) (英语) 平装 – 2010年7月2日
Robert Love is an open source programmer, speaker, and author who has been using and contributing to Linux for more than 15 years. He is currently senior software engineer at Google, where he was a member of the team that developed the Android mobile platform’s kernel. Prior to Google, he was Chief Architect, Linux Desktop, at Novell. Before Novell, he was a kernel engineer at MontaVista Software and Ximian.
Love’s kernel projects include the preemptive kernel, the process scheduler, the kernel events layer, inotify,VM enhancements, and several device drivers.
He has given numerous talks on and has written multiple articles about the Linux kernel and is a contributing editor for Linux Journal. His other books include Linux System Programming and Linux in a Nutshell.
1 Introduction to the Linux Kernel
2 Getting Started with the Kernel
3 Process Management
4 Process Scheduling
5 System Calls
6 Kernel Data Structures
7 Interrupts and Interrupt Handlers
8 Bottom Halves and Deferring Work
9 An Introduction to Kernel Synchronization
10 Kernel Synchronization Methods
11 Timers and Time Management
12 Memory Management
13 The Virtual Filesystem
14 The Block I/O Layer
15 The Process Address Space
16 The Page Cache and Page Writeback
17 Devices and Modules
20 Patches, Hacking, and the Community
Really gives the tools you need to know to be an effective developer. This book helps me understand the dryer, wordier, less clear, out-of-date, Linux Device Drivers. Full disclosure: have not completely finished reading the book, but I am more than a third the way through!
I favor books. Books are often rigorously peer reviewed, coherent, well indexed, useful both as a reader and a reference.
1. Covers the material
2. Presented in an organized and meaningful way
5. Indexed (indexed expertly - I can find the desired answer quickly)
However, this is a great high level discussion of the kernel and its implementation. And what really makes it great is the fact that you realize that Love know his stuff and he has a great writing style.
He does cover the major system components with a great high level description, and more important, he gives a great analysis of issues, both design and some implementation. His overview of the CFS is the best of any I have seen. And this can be repeated most topics he covers in this book.
The index is excellent.
After reading this book I would love to go to a seminar given by Love. His presentation skills are probably better than his writing skills.
- user thread vs kernel thread.
- kernel-space process context vs kernel-space interrupt context.
- tasklet as a non-concurrent form of softirq and is not related in any way to tasks.
- bottom-half methods comprising softirq, tasklet and work queue; and that BH and task queue are obsolete and deprecated.
- semaphore sleeping vs spinlock spinning (busy-wait).
- spinlock adversely affecting scheduling latency while semaphore does not.
Love's book shows ambly that he is an expert in Linux kernel matters and speaks with authority. At the same time he has the ability of a good teacher to explain obscure and critical kernel concepts clearly. I heartily recommend this as the first book one should read about the Linux kernel, well before books such as Bovet's "Understanding the Linux Kernel" or Rubini's device driver book.
This 2nd edition introduces more materials and explanation to cover the updated 2.6 kernel. As far as I can see, it is a worthy new edition to own.