Open Source Home
Open Source Articles
Open Source Links
Open Source Books
Open Source Tools
Open Source Keywords


|
Open Source
Understanding the Linux Kernel, 2nd Edition
|
|
See more Amazon Details
|
|
Contents Listing
Preface
1. Introduction
Linux Versus Other Unix-Like Kernels
Hardware Dependency
Linux Versions
Basic Operating System Concepts
An Overview of the Unix Filesystem
An Overview of Unix Kernels
2. Memory Addressing
Memory Addresses
Segmentation in Hardware
Segmentation in Linux
Paging in Hardware
Paging in Linux
3. Processes
Processes, Lightweight Processes, and Threads
Process Descriptor
Process Switch
Creating Processes
Destroying Processes
4. Interrupts and Exceptions
The Role of Interrupt Signals
Interrupts and Exceptions
Nested Execution of Exception and Interrupt Handlers
Initializing the Interrupt Descriptor Table
Exception Handling
Interrupt Handling
Softirqs, Tasklets, and Bottom Halves
Returning from Interrupts and Exceptions
5. Kernel Synchronization
Kernel Control Paths
When Synchronization Is Not Necessary
Synchronization Primitives
Synchronizing Accesses to Kernel Data Structures
Examples of Race Condition Prevention
6. Timing Measurements
Hardware Clocks
The Linux Timekeeping Architecture
CPU's Time Sharing
Updating the Time and Date
Updating System Statistics
Software Timers
System Calls Related to Timing Measurements
7. Memory Management
Page Frame Management
Memory Area Management
Noncontiguous Memory Area Management
8. Process Address Space
The Process's Address Space
The Memory Descriptor
Memory Regions
Page Fault Exception Handler
Creating and Deleting a Process Address Space
Managing the Heap
9. System Calls
POSIX APIs and System Calls
System Call Handler and Service Routines
Kernel Wrapper Routines
10. Signals
The Role of Signals
Generating a Signal
Delivering a Signal
System Calls Related to Signal Handling
11. Process Scheduling
Scheduling Policy
The Scheduling Algorithm
System Calls Related to Scheduling
12. The Virtual Filesystem
The Role of the Virtual Filesystem (VFS)
VFS Data Structures
Filesystem Types
Filesystem Mounting
Pathname Lookup
Implementations of VFS System Calls
File Locking
13. Managing I/O Devices
I/O Architecture
Device Files
Device Drivers
Block Device Drivers
Character Device Drivers
14. Disk Caches
The Page Cache
The Buffer Cache
15. Accessing Files
Reading and Writing a File
Memory Mapping
Direct I/O Transfers
16. Swapping: Methods for Freeing Memory
What Is Swapping?
Swap Area
The Swap Cache
Transferring Swap Pages
Swapping Out Pages
Swapping in Pages
Reclaiming Page Frame
17. The Ext2 and Ext3 Filesystems
General Characteristics of Ext2
Ext2 Disk Data Structures
Ext2 Memory Data Structures
Creating the Ext2 Filesystem
Ext2 Methods
Managing Ext2 Disk Space
The Ext3 Filesystem
18. Networking
Main Networking Data Structures
System Calls Related to Networking
Sending Packets to the Network Card
Receiving Packets from the Network Card
19. Process Communication
Pipes
FIFOs
System V IPC
20. Program Execution
Executable Files
Executable Formats
Execution Domains
The exec Functions
A. System Startup
B. Modules
C. Source Code Structure
Bibliography
Source Code Index
Index
|
|
Contents
View a contents listing.
Short
Short Description.
Keyword Pages
Keyword Bestsellers
Open Source Bestsellers The bestselling books on Amazon.
Articles
Birmingham Evaluates Open-Source
MySQL and Red Hat
Bank Saving 50 percent on Sun to Linux Move
Red Hat Sales and Profit Leap
Visit our site of the month Sarbanes-Oxley at www.sarbanesoxleyuk.co.uk
|