Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Understanding the Linux Kernel (2nd Edition)

Buy

In the spring semester of 1997, we taught a course on operating systems based on Linux 2.0. The idea was to encourage students to read the source code. To achieve this, we assigned term projects consisting of making changes to the kernel and performing tests on the modified version. We also wrote course notes for our students about a few critical features of Linux such as task switching and task scheduling.

Out of this work — and with a lot of support from our O'Reilly editor Andy Oram — came the first edition of Understanding the Linux Kernel and the end of 2000, which covered Linux 2.2 with a few anticipations on Linux 2.4. The success encountered by this book encouraged us to continue along this line, and in the fall of 2001 we started planning a second edition covering Linux 2.4. However, Linux 2.4 is quite different from Linux 2.2. Just to mention a few examples, the virtual memory system is entirely new, support for multiprocessor systems is much better, and whole new classes of hardware devices have been added. As a result, we had to rewrite from scratch two-thirds of the book, increasing its size by roughly 25 percent.

As in our first experience, we read thousands of lines of code, trying to make sense of them. After all this work, we can say that it was worth the effort. We learned a lot of things you don't find in books, and we hope we have succeeded in conveying some of this information in the following pages.

All people curious about how Linux works and why it is so efficient will find answers here. After reading the book, you will find your way through the many thousands of lines of code, distinguishing between crucial data structures and secondary ones—in short, becoming a true Linux hacker.

Our work might be considered a guided tour of the Linux kernel: most of the significant data structures and many algorithms and programming tricks used in the kernel are discussed. In many cases, the relevant fragments of code are discussed line by line. Of course, you should have the Linux source code on hand and should be willing to spend some effort deciphering some of the functions that are not, for sake of brevity, fully described.

On another level, the book provides valuable insight to people who want to know more about the critical design issues in a modern operating system. It is not specifically addressed to system administrators or programmers; it is mostly for people who want to understand how things really work inside the machine! As with any good guide, we try to go beyond superficial features. We offer a background, such as the history of major features and the reasons why they were used.

(HTML tags aren't allowed.)

Generic Pipelines Using Docker: The DevOps Guide to Building Reusable, Platform Agnostic CI/CD Frameworks
Generic Pipelines Using Docker: The DevOps Guide to Building Reusable, Platform Agnostic CI/CD Frameworks

Create generic pipelines to reduce your overall DevOps workload and allow your team to deliver faster. This book helps you get up to speed on the pros and cons of generic pipeline methodology, and learn to combine shell scripts and Docker to build generic pipelines.

In today’s world of micro-services and agile...

Voice of the Customer: Capture and Analysis (Six SIGMA Operational Methods)
Voice of the Customer: Capture and Analysis (Six SIGMA Operational Methods)

Discover All the Advantages of Using Design for Six Sigma to Develop and Build Customer Value-Based Products

Voice of the Customer Capture and Analysis equips Six Sigma you with the skills needed to create and deploy surveys, capture real customers need with ethnographic methods, immediately analyze the results, and...

Enhanced Bayesian Network Models for Spatial Time Series Prediction: Recent Research Trend in Data-Driven Predictive Analytics (Studies in Computational Intelligence)
Enhanced Bayesian Network Models for Spatial Time Series Prediction: Recent Research Trend in Data-Driven Predictive Analytics (Studies in Computational Intelligence)
This research monograph is highly contextual in the present era of spatial/spatio-temporal data explosion. The overall text contains many interesting results that are worth applying in practice, while it is also a source of intriguing and motivating questions for advanced research on spatial data science. 

The
...

Design of Structural Steelwork
Design of Structural Steelwork
This second edition of Design of Structural Steelwork presents the essential design aspects of steel as a structural material. It has been carefully revised and updated to provide a modern introduction to the subject, assuming only a basic knowledge of structural analysis and solid mechanics.

Instruction in structural design has
...
High Performance Browser Networking: What every web developer should know about networking and web performance
High Performance Browser Networking: What every web developer should know about networking and web performance
How prepared are you to build fast and efficient web applications? This eloquent book provides what every web developer should know about the network, from fundamental limitations that affect performance to major innovations for building even more powerful browser applications--including HTTP 2.0 and XHR improvements, Server-Sent Events...
iOS Code Testing: Test-Driven Development and Behavior-Driven Development with Swift
iOS Code Testing: Test-Driven Development and Behavior-Driven Development with Swift
Put into motion practical examples to master Test-Driven Development (TDD) and acceptance testing in Swift.

This book uses a pragmatic approach to writing well-tested code and provides techniques that can be used to retrofit tests to legacy code bases. You'll be introduced to basic principles of TDD, such as
...
©2019 LearnIT (support@pdfchm.net) - Privacy Policy