Skip to content

Understanding the Linux Kernel, Third Edition

Select Format

Select Condition ThriftBooks Help Icon

Recommended

Format: Paperback

Condition: Good

$23.79
Save $46.20!
List Price $69.99
Almost Gone, Only 1 Left!

Book Overview

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... This description may be from another edition of this product.

Customer Reviews

5 ratings

VERY VERY HIGHLY RECOMMENDED!!

Are you curious about how Linux works and why it is so efficient? If you are, then this book is for you! Authors Daniel Plerre Bovet and Marco Cesati, have done an outstanding job of writing a practical book that will help you find your way through the many thousands of lines of code. Bovet and Cesati, begin by presenting a general picture of what is inside a Unix kernal and how Linux competes against other well-known Unix systems. Then, the authors explain how 80x86 processors include special circuits to address data in memory and how Linux exploits them. They continue by explaining how each process runs either in an unprivileged User Mode or in a privileged Kernal Mode. Then, the authors introduce interrupts and exceptions. Then, they discuss how synchronization mechanisms are needed so that all these requests can be serviced in a interleaved way by the kernal. Next, the authors discuss timing measurements. Then, they explain how Linux executes, in turn, every active process in the system so that all of them can progress toward their completions. They continue by describing the sophisticated techniques required to handle the most precious resource in the system. Next, the authors show you how the kernal copes with the requests for memory issued by greedy application programs. Then, they explain how a process running in User Mode makes requests to the kernal. They continue by describing how a process may send synchronization signals to other processes. Then, the authors introduce a general layer that supports many different filesystems. Next, they offer insights into special files and on the corresponding hardware device drivers. They also show you how to reduce disk accesses through the use of RAM. Then, they show you how user applications access normal files. Next, the authors explain the techniques used by Linux to ensure that enough memory is always available. Then, they illustrate the most frequently used Linux filesystem, namely Ext2 and its recent evolution, Ext3. They continue by introducing communication mechanisms other than signals available to User Mode processes. Finally, the authors explain how user applications are started. This most excellent book helps you distinguish between crucial data structures and secondary ones. More importantly, this book helps you become a true Linux hacker.

A Valuable Resource

The third edition of this valuable resource incorporates descriptions of the latest changes in the 2.6 Linux kernel series. There is simply nothing else out there resembling this work in either depth or breadth, and as such every developer active in Linux kernel work (or trying to understand how it all fits together) needs to have this book. While there are a few other books out there that describe the Linux kernel on a conceptual level (a very few of which have quality), there is really nothing (recently) that examines the actual code at this level of detail (each edition keeps getting fatter.) As academics the authors are interested in presenting a complete snapshot of the Linux kernel, and unravelling how it works. This is unlike in method (but complementary to) the engineer's approach of its excellent companion book from O'Reilly, Linux Device Drivers, by Corbet, Rubini and Kroah-Hartmann. They also focus more on the x86 architecture in order to be definite. Because of its focus on being an entire picture, understanding this book doesn't require extensive pre-knowledge of the Linux kernel, only a good general grasp of principles. I have used the earlier editions as companion textbooks for classes on the Linux kernel, and intend on using this edition in the same fashion. Don't miss out on this unique book.

Indepth-coverage of a complex system

As the title suggests, the author explains conceptsin the linux operating system by using C code.You need to be able to read C code inorder to understandthe material in the book.It can get a bit tiring after a while considering thatthe author really wants YOU to know LINUX.The effort is worth it!

Grabs you, won't let you go !

My interest Ranges from admin to security to drivers. This book (or tome in many peoples eyes) is the utter definition of 'internals explained'. I sat with this book and Linux Device Drivers 2nd Edition (also from O'Reilly) and practically obsessed! It's generally very good for anyone who does /anything/ linux. You will learn how to communicate with the kernel, and get a great explanation of all kernel specific functions. Whether you talk to it, interprocess with it, whatever; this book will be a /major/ help for kernel related tasks, It was for me. As a bonus, in the back you can find all functions and headers by reference and alphabetic. In essence, i was very satisfied and glad i came upon this 'tome'.Hope this helps

This is the best book for Linux2.2

In reference to some comment made by another reader I just want to point out that kernel stack switch happens in the middle of _switch_to macro as described in the para -4 of chapter-3(Pg-87). I don't want to start a war here but I would like to say to reviewers to kindly read carefully before blaming a book. I guess the right way to understand the kernel is download the intel programmer's guide (80386) and the kernel source code for linux version 2.2.14. Read the gates and segemnts section from intel, you may skip the task switching part for linux does not use the task switch of intel. All task switch is done in software. Dig in the source code along with the book. But don;t confuse between versions. Because the way fast and slow intrs were handeled before are different than that in 2.2.*. So in a way the device driver book by Rubini's interrupt handling section is not in accordance with this book. But this book's way is the one as per linux version2.2 which is later than what Rubini's book is based on 2.0. I owe many thanks to the writers of this book who made an excellent job.
Copyright © 2023 Thriftbooks.com Terms of Use | Privacy Policy | Do Not Sell/Share My Personal Information | Cookie Policy | Cookie Preferences | Accessibility Statement
ThriftBooks® and the ThriftBooks® logo are registered trademarks of Thrift Books Global, LLC
GoDaddy Verified and Secured