Books & Videos

Table of Contents

  1. Chapter 1 Introduction

    1. Definitions

    2. Real Life and Embedded Linux Systems

    3. Example Multicomponent System

    4. 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. Using a Practical Project Workspace

    2. GNU Cross-Platform Development Toolchain

    3. C Library Alternatives

    4. Java

    5. Perl

    6. Python

    7. Ada

    8. Other Programming Languages

    9. Integrated Development Environments

    10. 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. Selecting a Filesystem

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

    3. CRAMFS

    4. JFFS2

    5. Disk Filesystem over NFTL

    6. Disk Filesystem over RAM Disk

    7. Mounting Directories on TMPFS

    8. Live Updates

  9. Chapter 9 Setting Up the Bootloader

    1. Bootloaders Galore

    2. Server Setup for Network Boot

    3. Using LILO with Disk and CompactFlash Devices

    4. Using GRUB with DiskOnChip Devices

    5. U-Boot

  10. Chapter 10 Setting Up Networking Services

    1. The Internet Super-Server

    2. Remote Administration with SNMP

    3. Network Login Through Telnet

    4. Secure Communication with SSH

    5. Serving Web Content Through HTTP

    6. Dynamic Configuration Through DHCP

  11. Chapter 11 Debugging Tools

    1. Debugging Applications with gdb

    2. Tracing

    3. Performance Analysis

    4. Memory Debugging

    5. A Word on Hardware Tools

  1. Appendix A Worksheet

    1. Project Identification

    2. Hardware Summary

    3. Development Tools

    4. Kernel

    5. Root filesystem

    6. Storage Device Organization

    7. Bootloader Configuration and Use

    8. Networking services

    9. Custom Project Software

    10. Debug Notes

    11. Additional Notes

    12. Embedded Linux Systems Worksheet

  2. Appendix B Resources

    1. Online

    2. Books

    3. Publications

    4. Organizations

    5. Linux and Open-Source-Oriented Hardware Projects

  3. Appendix C Important Licenses and Notices

    1. Exclusion of User-Space Applications from Kernel's GPL

    2. Notices on Binary Kernel Modules

    3. Legal Clarifications About the Kernel by Linus Torvalds

  4. Colophon