Understanding the Linux Kernel, Third Edition
By Daniel P. Bovet, Marco Cesati
November 2005
Pages: 942
ISBN 10: 0-596-00565-2 |
ISBN 13: 9780596005658




(Average of 5 Customer Reviews)


Description
This new edition covers Version 2.6 of the Linux kernel, which has seen significant changes to nearly every kernel subsystem, particularly in the areas of memory management and block devices. Understanding the Linux Kernel provides a guided tour of the code that forms the core of all Linux operating systems. Beyond the functioning of the code, the book explains the theoretical underpinnings for why Linux, and many other operating systems, do things the way they do.
Full Description
In order to thoroughly understand what makes Linux tick and why it works so well on a wide variety of systems, you need to delve deep into the heart of the kernel. The kernel handles all interactions between the CPU and the external world, and determines which programs will share processor time, in what order. It manages limited memory so well that hundreds of processes can share the system efficiently, and expertly organizes data transfers so that the CPU isn't kept waiting any longer than necessary for the relatively slow disks.
The third edition of Understanding the Linux Kernel takes you on a guided tour of the most significant data structures, algorithms, and programming tricks used in the kernel. Probing beyond superficial features, the authors offer valuable insights to people who want to know how things really work inside their machine. Important Intel-specific features are discussed. Relevant segments of code are dissected line by line. But the book covers more than just the functioning of the code; it explains the theoretical underpinnings of why Linux does things the way it does.
This edition of the book covers Version 2.6, which has seen significant changes to nearly every kernel subsystem, particularly in the areas of memory management and block devices. The book focuses on the following topics:
- Memory management, including file buffering, process swapping, and Direct memory Access (DMA)
- The Virtual Filesystem layer and the Second and Third Extended Filesystems
- Process creation and scheduling
- Signals, interrupts, and the essential interfaces to device drivers
- Timing
- Synchronization within the kernel
- Interprocess Communication (IPC)
- Program execution
Understanding the Linux Kernel will acquaint you with all the inner workings of Linux, but it's more than just an academic exercise. You'll learn what conditions bring out Linux's best performance, and you'll see how it meets the challenge of providing good system response during process scheduling, file access, and memory management in a wide variety of environments. This book will help you make the most of your Linux system.
Featured customer reviews

Which kernel are they commenting on?,
July 19 2008
Submitted by
marty
[
Respond |
View]
Its a clear and well written book -- but I'm not sure what they're commenting on!!
It supposed to cover 2.6.10 -- but the code snippets don't match.
Often they rewrite the code (I don't know why -- my requests for explanation went unanswered).
This also happened in the 2nd edition.
Most of the time the actual kernel code is clearer than the refactored algorithms they present (which are presented as code snippets, not algorithms).
This is a great book,
January 30 2007
Submitted by
jdruin
[
Respond |
View]
This book does a great job of explaining the data structures and mechanisms Linux uses. It is also written as plainly as possible considering the subject at hand and the editor did a nice job making sure the text is not overly complicated. The book does not include many code examples compared to other books on the subject such as Linux Kernel Internals. The best use is as a reference or as a guide while actually viewing the kernel code. It should be more resistant to kernel changes over time as a result of focusing on the theories and interfaces behind the kernel but will have to be updated if the internal structures are changed.
Great book,
November 24 2006
Submitted by
Shinymetal
[
Respond |
View]
Well written, concise and complete, a really good reading.Reccomended.
Read all reviews
A good read,
April 06 2006
Submitted by
P Wilson
[
Respond |
View]
Delving into the Linux code left me with many unanswered questions. This book answered a lot of them and proved very useful. Linux Device Drivers, also by O'Reilly was a good accompaniment. Very recommended.
the road to linux,
November 17 2005
Submitted by Anonymous Reader [
Respond |
View]
to master linux- learn C,logic-mathmatics and pick this book up after you know C with x86 instruction set experience!!!!-----JUMP into this book without prior knowledge to subjects i suggest learning, will be very difficult. Word of advice start with windows
and learn the subjects first. Read the book its comprehensive you will master linux quickly, 3 years.(GET A Enterprise Distro of linux) Reading man pages and toying with linux will take a lifetime!!!!!!!!!! TRUST ME!!!!!!!!
Media reviews
"Explaining a program that is millions of lines of code long is an enormous challenge. This book focuses on the operating system aspects of the kernel, as opposed to networking or device drivers (which are covered in other books). Given that focus, I feel that the authors have done an excellent job...This was not the first Linux kernel book that I looked at, but it is the one I can recommend."
-- Rik Farrow,
;login:
Read all reviews