BUY THIS BOOK

Safari Books Online

What is this?

Looking to Reprint this content?

Understanding the Linux Kernel, Second Edition

By Daniel P. Bovet, Marco Cesati
December 2002
Pages: 784
ISBN 10: 0-596-00213-0 | ISBN 13: 9780596002138
starstarstarstarstar (Average of 4 Customer Reviews)

This book has been updated—the edition you're requesting is OUT OF PRINT. Please visit the catalog page of the latest edition.

The latest edition is also available on Safari Books Online.

Book description

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. 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. You'll learn what conditions bring out Linux's best performance, and how it meets the challenge of providing good system response during process scheduling, file access, and memory management in a wide variety of environments.
Full 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.
Post-purchase benefits:

Register your book | Submit Errata


Browse within this book

Cover | Table of Contents | Index | Sample Chapter | Colophon

Book details

Second Edition: December 2002
ISBN: 0-596-00213-0
Pages: 784
Average Customer Reviews: starstarstarstarstar (Based on 4 Reviews)


Featured customer reviews

Write a Review


Understanding the Linux Kernel, 2nd Edition Review,  August 05 2003
Rating: StarStarStarStarStar
Submitted by mohit singh   [Respond | View]

this book details the linux kernel design better than 'linux kernel internals' by michael beck et.al., but the code commentary could be better complement.

i think i must wait for third edition.


Understanding the Linux Kernel, 2nd Edition Review,  February 26 2003
Rating: StarStarStarStarStar
Submitted by Matt Griswold   [Respond | View]

This book was ok, but its not nearly in depth or detailed as Gary Nutt's 'Kernel Projects for Linux' I give it a thunbs down :/


Understanding the Linux Kernel, 2nd Edition Review,  February 26 2003
Rating: StarStarStarStarStar
Submitted by Jason Greene   [Respond | View]

I highly recommend this book. It does a very good job at explaining both the overall kernel architecture, and the intel target implementation specifics.

A must have!

Read all reviews


Understanding the Linux Kernel, 2nd Edition Review,  January 16 2003
Rating: StarStarStarStarStar
Submitted by Schmel   [Respond | View]

Wow. Quite a few errata -- some rather significant -- for an edition which not many people own yet. Does anyone know how big the first printing was? Maybe I'll hold off for the second printing.


Media reviews

"This book provides a 'tour' of the Linux kernel, written for those who are sufficiently curious to delve into the kernel's internals. It is also an excellent resource for students of computer science 'who want to know more about the critical design issues in a modern operating system."
--Major Keary, "PC Update," May 2003

"Best Book"--2003 "Linux Journal's" Editors' Choice Awards

Reviews From Previous Edition

"Would I buy the book? Undoubtedly, although I don't need it. However, if you need to understand Linux source code, then this is the essential guide."
--Jan Wysocki, news@UK, June 2001

"Despite the lucid and knowledgeable writing, you'll come up against some brain-stretching complexity. Nevertheless, this book is an important addition to the Linux canon."
--Steve Patient, Amazon.co.uk

"Fortunately, times have changed, and now there are several good overviews of the Linux Kernel. Perhaps the most lucid is 'Understanding the Linux Kernel'."
--John Lombardo, Embedded Linux Journal, June 2001

"Online documentation is prolific, but tends to be terse. Fortunately, a growing body of literature is developing, a prime example of which is O'Reilly's 'Understanding the Linux Kernel'. Readers will find much of interest in the well-written text."
--Major Kearny, Book News, April 2001

"...covers a difficult-to-rasp and technical subject matter, but does it clearly and concisely...a solid grounding in the operation of the Linux Kernel. Rating 9/10."
--Richard Drummond, Linux Format, March 2001

"So, taking it as a given the a book about Linux internals is a good thing, how good is this one? Happily, it's very good --better than any previous such book that I've seen. This is a good book. The authors have cracked open a large collection of code that's currently very relevant. If they are in for the long haul and release revised books in a timely way, then this will likely become and remain the definitive explanation of Linux internals."
--John Regehr, slashdot.org, January 23, 2001

"O'Reilly continues its tradition of exhaustive and thoroughly lucid guides to all things technical with this thick guided tour of the Linux Kernal. What makes this book stand out among other guides to the Linux operating system is that it takes the time to explain why certain features of the kernal are good or bad for specific applications.It's only a matter of time before this becomes a textbook for advanced college course on operating systems. Highly recommended for serious programmers and application developers."
--Netsurfer Digest, Dec 6, 2000


"An outstanding explanation of the kernel that should benefit almost any C/C++ programmer working on Linux. Any programmer who has jumped into the kernal knows there is a real need or a book that takes a reader by the hand and steps through all the major (and sometime minor) internal components and processes of the Linux kernel. Luckily "Understanding the Linux Kernel" not only does that , but it does it very well...the presentation of the material is very well executed, even by O'Reilly's normally high standards...a must-read for anyone doing non-trivial programming on Linux."
--Lou Grinzo, internet.com, Dec 22, 2000

"a practical introduction to kernel internals for those who are new to the subject, and I strongly recommend it for any programmer who's competent in C."
--www.kuro5hin.org, Feb 14th, 2001

"If you have reached the point where you have learned a few simple ideas about programming in Linux and you would like to know more about kernels then this book is probably for you." --Richard Ibbotson, Sheffield Linux User's Group, Feb 2001 "I am impressed both by the depth of coverage and by the readability of the text, especially bearing in mind the somewhat geek-like nature of the subject that's being discussed. Is the best explanation of Linux kernel internals that I've seen so far. This one's sure to be a classic, buy it if you can."
--Developers Review, Feb 2001

"This is a good book. The authors have cracked open a large collection of code that's currently very relevant. If they are in for the long haul and release revised books in a timely way, then this will likely become and remain the definitive explanation of Linux internals."
--John Regehr, slashdot.com, January 2001


"After reading this book, you should be able to find your way through the code, distinguishing between crucial data structures and secondary ones"--in short, you'll become a true Linux hacker."
--Software World, January 2001

Hide extended reviews


See larger cover