The Linux Kernel Primer : A Top-Down Approach for x86 and PowerPC Architectures
-Covers Linux on PPC
-Top-down approach traces functionality from user space into the kernel
-Lots of code commentary and examples. It walks you through the actual
source code implementation.
-Side by side comparison of x86 and PPC
-Hands on Examples and Projects
-Covers the kernel build system.
The "Linux Kernel Primer" offers a comprehensive view of the underpinnings
of the Linux kernel. This book starts with a guide of the necessary tools a
developer needs to be able to understand and manipulate the source code
including cryptic programming fundamentals found throughout the kernel
code. It then follows up with an in depth analysis of the major subsystems
including process management, memory management, scheduling, I/O, and
filesystems. This book also provides information necessary to get started
developing on the Linux kernel. The specifics of Intel and PowerPC
architecture implementations are covered side by side providing perspective on
architecture specific features and how Linux make use of them.
Similar in approach to Kernighan's "Practice of Programming" 020161586X
- Paperback | 648 pages
- 177.8 x 228.6 x 22.9mm | 907.2g
- 10 Oct 2005
- Pearson Education (US)
- Prentice Hall
- Upper Saddle River, United States
Other books in this series
13 May 2016
05 Aug 2017
Mixed media product
07 Aug 2007
22 Apr 2004
17 Nov 2006
14 Oct 2005
Back cover copy
The Linux(R) Kernel Primer is the definitive guide to Linux kernel programming. The authors' unique top-down approach makes kernel programming easier to understand by systematically tracing functionality from user space into the kernel and carefully associating kernel internals with user-level programming fundamentals. Their approach helps you build on what you already know about Linux, gaining a deep understanding of how the kernel works and how its elements fit together.
One step at a time, the authors introduce all the tools and assembly language programming techniques required to understand kernel code and control its behavior. They compare x86 and PowerPC implementations side-by-side, illuminating cryptic functionality through carefully-annotated source code examples and realistic projects. The Linux(R) Kernel Primer is the first book to offer in-depth coverage of the rapidly growing PowerPC Linux development platform, and the only book to thoroughly discuss kernel configuration with the Linux build system. Coverage includes
x86 and PPC assembly language
Viewing kernel internals
Linux process model
User and kernel space
Interrupts and exceptions
Memory allocation and tracking
Tracing subsystem behavior
Filesystems and file operations
Scheduling and synchronization
Kernel boot process
Kernel build system
If you know C, this book teaches you all the skills and techniques you need to succeed with Linux kernel programming. Whether you're a systems programmer, software engineer, systems analyst, test professional, open source project contributor, or simply a Linux enthusiast, you'll find it indispensable.
(c) Copyright Pearson Education. All rights reserved.
Table of contents
About the Authors.
2. Exploration Toolkit.
3. Processes: The Principal Model of Execution.
4. Memory Management.
7. Scheduling and Kernel Synchronization.
8. Booting the Kernel.
9. Building the Linux Kernel.
10. Adding Your Code to the Kernel.
I've been less than happy with other kernel books I've read. Admittedly,it's a difficult subject: there's a lot to cover, and you really need quite a bit of programming and general Unix knowledge before you could even consider jumping into this area. But I have the background,have even written simple Unix drivers, and yet every other kernel programming book has disappointed me.
It's all so overwhelming: there are conventions and quirks that have developed over time and surely are second nature to the people who have been doing Linux kernels for years, but these things are baffling to the newcomer.
This book tries to get you past that. The authors specifically say that they have tried to cover the things that confused them when they first started looking at the kernel. I'm sure their efforts aren't perfect, but the effort does definitely show.
The authors present several programming projects to help explore the kernel concepts, and every chapter has review questions to help firm up your understanding. The approach is from user space when possible: the assumption is that you are comfortable with application programming and that is used as the base to lead you down into the work done by the kernel for your programs. There's plenty of annotated source code here, both for x86 and PowerPC architectures. The inclusion of PowerPC information was an unexpected bonus; other books I've read have usually ignored that entirely or glossed it over quickly.
Of course you need a background in C, and while this does try to cover general kernel subjects, it wouldn't hurt to have at least some prior reading there. A little familiarity with hardware and light assembly language will help also, although the authors do give some coverage there.
I'm looking forward to spending more time exploring this book.
About Steven Smolski
Gordon Fischer has been using Linux and other Unices since 1996. He has written device drivers for RF tuners, modulators and other low-level devices. He has used both the 2.2 and 2.4 Linux kernels in enterprise settings ranging from servers to embedded devices across both i386 and PPC chipsets. He believes all code should be written in either C or LISP.
Steve Smolski has been in the semiconductor business for 26 years and has always been interested in the line between hardware and software. He has worked in manufacturing, test, and development of memory, processors, and ASICS. He has written applications and device drivers for Windows, AIX, Linux, and several embedded operating systems. His favorite jobs have been in robotics and multimedia.
(c) Copyright Pearson Education. All rights reserved.