Books & Videos

Table of Contents

  1. Chapter 1 Introduction

    1. Definitions

    2. Real Life and Embedded Linux Systems

    3. Design and Implementation Methodology

  2. Chapter 2 Basic Concepts

    1. Types of Hosts

    2. Types of Host/Target Development Setups

    3. Types of Host/Target Debug Setups

    4. Generic Architecture of an Embedded Linux System

    5. System Startup

    6. Types of Boot Configurations

    7. System Memory Layout

  3. Chapter 3 Hardware Support

    1. Processor Architectures

    2. Buses and Interfaces

    3. I/O

    4. Storage

    5. General-Purpose Networking

    6. Industrial-Grade Networking

    7. System Monitoring

  4. Chapter 4 Development Tools

    1. A Practical Project Workspace

    2. GNU Cross-Platform Development Toolchain

    3. C Library Alternatives

    4. Java

    5. Perl

    6. Python

    7. Other Programming Languages

    8. Eclipse: An Integrated Development Environment

    9. Terminal Emulators

  5. Chapter 5 Kernel Considerations

    1. Selecting a Kernel

    2. Configuring the Kernel

    3. Compiling the Kernel

    4. Installing the Kernel

    5. In the Field

  6. Chapter 6 Root Filesystem Content

    1. Basic Root Filesystem Structure

    2. Libraries

    3. Kernel Modules

    4. Kernel Images

    5. Device Files

    6. Main System Applications

    7. Custom Applications

    8. System Initialization

  7. Chapter 7 Storage Device Manipulation

    1. MTD-Supported Devices

    2. Disk Devices

    3. To Swap or Not To Swap

  8. Chapter 8 Root Filesystem Setup

    1. Filesystem Types for Embedded Devices

    2. Writing a Filesystem Image to Flash Using an NFS-Mounted Root Filesystem

    3. Placing a Disk Filesystem on a RAM Disk

    4. Rootfs and Initramfs

    5. Choosing a Filesystem’s Type and Layout

    6. Handling Software Upgrades

  9. Chapter 9 Setting Up the Bootloader

    1. Embedded Bootloaders

    2. Server Setup for Network Boot

    3. Using the U-Boot Bootloader

  10. Chapter 10 Setting Up Networking Services

    1. Network Settings

    2. Busybox

    3. Dynamic Configuration Through DHCP

    4. The Internet Super-Server

    5. Remote Administration with SNMP

    6. Network Login Through Telnet

    7. Secure Communication with SSH

    8. Serving Web Content Through HTTP

    9. Provisioning

  11. Chapter 11 Debugging Tools

    1. Eclipse

    2. Debugging Applications with gdb

    3. Tracing

    4. Performance Analysis

    5. Memory Debugging

    6. A Word on Hardware Tools

  12. Chapter 12 Introduction to Real-Time Linux

    1. What Is Real-Time Processing?

    2. Should Your Linux Be Real-Time?

    3. Common Real-Time Kernel Requirements

    4. Some Typical Users of Real-Time Computing Technology

    5. The Linux Paths to Real-Time

  13. Chapter 13 The Xenomai Real-Time System

    1. Porting Traditional RTOS Applications to Linux

    2. The Xenomai Architecture

    3. How Xenomai Works

    4. The Real-Time Driver Model

    5. Xenomai, Chameleon by Design

  14. Chapter 14 The RT Patch

    1. Interrupts As Threads

    2. Priority Inheritance

    3. Configuring the Kernel with the RT Patch

    4. High-Resolution Timers

    5. The Latency Tracer

    6. Conclusion

  1. Colophon