Sebastopol, CA--To thoroughly understand what makes Linux tick and why
it's so efficient, one needs 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.
Understanding the Linux Kernel, Second Edition by Daniel P. Bovet and
Marco Cesati (O'Reilly, US $49.95) takes readers 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 of why Linux does things the way it does.
The new edition of "Understanding the Linux Kernel" 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 kernel code has been significantly enlarged," Bovet and Cesati
explain. "The 2.2 version occupies about 58 megabytes of disk space,
while the 2.4 version occupies about 144 megabytes. In order to list
all of the code of the 2.4 version, we would need more than forty books
like 'Understanding the Linux Kernel,' without commenting on it!" While
refraining from listing all the code, the authors explore each
significant 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
- Synchronization in the kernel
- Interprocess Communication (IPC)
- Program execution
The second edition of "Understanding the Linux Kernel" will acquaint
readers with all the inner workings of Linux, but is more than just an
academic exercise. Readers will learn what conditions bring out Linux's
best performance, and 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 indeed
power, then this book give Linux users the power to make the most of
their Linux systems.
What the critics said about the first edition:
"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
"An outstanding explanation of the kernel that should benefit almost
any C/C++ programmer working on Linux. Any programmer who has jumped
into the kernel knows there is a real need for 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, December 22, 2000
"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, February 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. It's 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, February 2001
"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, February 14th, 2001
Understanding the Linux Kernel, Second Edition
Daniel P. Bovet & Marco Cesati
ISBN 0-596-00213-0, 765 pages, $49.95 (US), $77.95 (CAN), 35.50 (UK)
O'Reilly & Associates is the premier information source for
leading-edge computer technologies. The company's books, conferences,
and web sites bring to light the knowledge of technology innovators.
O'Reilly books, known for the animals on their covers, occupy a
treasured place on the shelves of the developers building the next
generation of software. O'Reilly conferences and summits bring alpha
geeks and forward-thinking business leaders together to shape the
revolutionary ideas that spark new industries. From the Internet to
XML, open source, .NET, Java, and web services, O'Reilly puts
technologies on the map.