|
 |
|
 |
 |
Understanding the Linux Kernel (2nd Edition)
|
by Daniel P. Bovet and Marco Cesati
Sales Rank: 470266
|
$2.74
At Amazon

|
|
Paperback: 816 pages
Publisher: O'Reilly Media, Inc.; 2 edition December 2002
Language: English
ISBN-10: 0596002130
ISBN-13: 978-0596002138
Product Dimensions:
11.1 x 7 x 1.4 inches
Shipping Weight: 2.3 pounds
Product Description
To thoroughly understand what makes Linux tick and why it's so efficient, you need to delve deep into the heart of the operating system--into the Linux kernel itself. The kernel is Linux--in the case of the Linux operating system, it's the only bit of software to which the term "Linux" applies. The kernel handles all the requests or completed I/O operations and determines which programs will share its processing time, and in what order. Responsible for the sophisticated memory management of the whole system, the Linux kernel is the force behind the legendary Linux efficiency. The new edition of Understanding the Linux Kernel takes you on a guided tour through the most significant data structures, many algorithms, and programming tricks used in the kernel. Probing beyond the superficial features, the authors offer valuable insights to people who want to know how things really work inside their machine. Relevant segments of code are dissected and discussed line by line. The book covers more than just the functioning of the code, it explains the theoretical underpinnings for why Linux does things the way it does. The new edition of the book has been updated to cover version 2.4 of the kernel, which is quite different from version 2.2: the virtual memory system is entirely new, support for multiprocessor systems is improved, and whole new classes of hardware devices have been added. The authors explore each new feature in detail. Other topics in the book include: - Memory management including file buffering, process swapping, and Direct memory Access (DMA)
- The Virtual Filesystem and the Second Extended Filesystem
- Process creation and scheduling
- Signals, interrupts, and the essential interfaces to device drivers
- Timing
- Synchronization in the kernel
- Interprocess Communication (IPC)
- Program execution
Understanding the Linux Kernel, Second Edition will acquaint you with all the inner workings of Linux, but is 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. If knowledge is power, then this book will help you make the most of your Linux system.
About The Author
received a degree in mathematics in 1992 and a Ph.D. in computer science (University of Rome, "La Sapienza") in 1995. He is now a research assistant in the computer science department of the School of Engineering (University of Rome, "Tor Vergata"). In the past, he served as system administrator and Unix programmer for the university (as a Ph.D. student) and for several institutions (as a consultant).
Customer Reviews & Comments I've been reading kernel books for nearly 20 years -- this is not recommended. Some of the chapters and explanations I liked, others I felt were dry and lacking. The code examples seem to run through a non-deterministic preprocessor -- the code is supposed to describe 2.4.18, but the code snippets don't quite match the actual code (while generally working the same way, the algorithms/loop structure are often rewritten and the macros are sometimes expanded). I find it very useful when books comment on actual code examples, this is "kinda massaged code" -- I found it very frustrating when I actually looked at the kernel tree when they had snippets in the book. I often found it necessary to look at the actual code to give more context (but the code rarely matched verbatim -- very strange). And when they did rewrite algorithms, I found the kernel 2.4.18 source to be MORE lucid. The explanations without code were adequate, and I found some to be illuminating. Perhaps since the book has two authors, different authors wrote different chapters? (I liked some chapters and didn't like others). If you want a general understanding of how kernels work, Andy Tanenbaum's "Operating Systems: Design and Implementation" where he elaborates on Minix is very useful -- with a complete Minix system (Minix is more of a teaching tool, which it does well, Linus looked at lMinix and wanted a more useful system, hence Linux). I found Robert Love's "Linux Kernel Development" very good (I read the 1st edition, still need to read the second edtion). And Linux Device Drivers (Corbet and Rubini) is very good and has excellent examples (but the examples may need some work to build on a current kernel -- had this problem with the 2nd edition).
|
Understanding the Linux Kernel (2nd Edition)
Available from Amazon
Price: $2.74

| |
|
|
|
|