Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Title Page
Copyright Page
Dedication
About the Author
About the Technical Reviewer
Acknowledgements
Introduction
CHAPTER 1 - About Embedded Linux
Why Use Embedded Linux?
10,000-Foot Embedded Linux Development Flyover
Anatomy of an Embedded Linux System
Where to Get Help
Next Up
CHAPTER 2 - Configuring the Software Environment
Host Environment
Host Services
Cabling
Avoiding an Angry Visit from IT
CHAPTER 3 - Target Emulation and Virtual Machines
Why Target Emulation?
Emulation via QEMU
Virtualization Software for x86 Hosts
Summary
CHAPTER 4 - Starting Your Project
Most Boards Include a Linux Distribution
What to Do After Unpacking the Board
Suitability for Your Project
Moving Forward
CHAPTER 5 - Getting Linux for Your Board
Obtaining Linux from the Board Vendor
Open Source Embedded Distributions
Getting Linux from Commercial Vendors and Consultants
What’s Next
CHAPTER 6 - Creating a Linux Distribution from Scratch
Cross-Compiler Basics
Overview of Building a GCC Cross-Compiler
Building Toolchains with Crosstool-NG
Creating the Root File System
Distributing the Distribution
Wrapping Up
CHAPTER 7 - Booting the Board
Booting a Linux System Is a Three-Act Play
Boot Loaders
Kernel Startup
What’s Next
CHAPTER 8 - Configuring the Application Development Environment
Pick the Right Tool for the Job
Know Your Application
What to Use for Development
Non-Traditional Embedded Languages
Performance and Profiling Tools
IDE
What’s Next
CHAPTER 9 - Application Development
Getting Started on Your Application
Desktop vs. Target
Hello World
Getting Ready for Debugging
What’s Next
CHAPTER 10 - Debugging Applications
Getting Started on Your Application
Types of Debugging
Remote Debugging Overview
Debugging C and C++
Debugging Java
Instrumentation
Java Instrumentation
Instrumentation in Scripting Languages
What’s Next
CHAPTER 11 - Kernel Configuration and Development
Kernel Project Layout
Building the Kernel
Open Source Community
CHAPTER 12 - Real Time
Real-Time Implementation in Linux
Real-Time Programming Practices
Common Hardware Pitfalls
Summary
CHAPTER 13 - Using Open Source Software Projects
Using Open Source Packages
Commonly Used Projects
CHAPTER 14 - BusyBox
How a BusyBox-Based System Is Structured
Building a BusyBox-Based System
What Makes BusyBox Small?
Creating Your Own Applet
Getting Help
What’s Next
CHAPTER 15 - System Design
The Big Picture
Configuring the Boot Loader and Kernel
Selecting a Root File System
Assembling a Root File System
Security
What’s Next
CHAPTER 16 - System Tuning
Reducing the Size of the Root File System
Reducing the Size of the Kernel
Minimizing Boot Time
What’s Next
CHAPTER 17 - Deploying Applications
Deployment for Embedded Devices
Deployment Strategies and Tactics
Boot Loaders
Deployment Root File Systems
What’s Next
CHAPTER 18 - Handling Field Updates
Root File System Updates
Kernel Updates
Field Update Failures
In Summary
Index
← Prev
Back
Next →
← Prev
Back
Next →