Embedded Linux will help the user: select an Embedded Linux platform based on hardware requirements; build and boot a custom Linux kernel for the platform; remote debug programs running on the platform using GNU tools; connect data acquisition and control electronics/peripherals using the platform's serial, parallel, USB, I/O port and I2C interfaces; interface the peripherals to the kernel and applications using modules; collect, control, store and present data via open source protocols and applications; and analyze Embedded Linux vendor product offerings.
Embedded Linux covers the development and implementation of interfacing applications on an embedded Linux platform. It includes a comprehensive discussion of platform selection, crosscompilation, kernel compilation, root filesystem creation, booting, remote debugging, real-world interfacing, application control, data collection, archiving, and presentation.
This book includes serial, parallel, memory I/O, USB, and interrupt-driven hardware designs using x86-, StrongARM®-, and PowerPC®-based target boards. In addition, you will find simple device driver module code that connects external devices to the kernel, and network integration code that connects embedded Linux field devices to a centralized control center. Examples teach hardware developers how to store and activate field bits and deliver process information using open source software. If you are a hardware developer, software developer, system integrator, or product manager who's begun exploring embedded Linux for interfacing applications, this book is for you.
- Select an embedded Linux platform (x86, StrongARM®, and PowerPC® architectures are covered)
- Create a cross-compiling and debugging development environment
- Build a custom Linux kernel for each architecture
- Create a minimum root filesystem
- Boot the custom Linux kernel on three target boards with x86, SA-1110, and MPC860 microprocessors
- Remote debug programs running on a target board across an ethernet network using GNU tools
- Connect data acquisition and control electronics/peripherals using the microprocessor's serial, parallel, memory I/O, and USB interfaces
- Measure average interrupt latencies for the x86, SA-1110, and MPC860 microprocessors and design an interrupt-driven process timer with 1mS accuracy
- Interface the peripherals to the kernel and applications using device driver modules
- Collect, control, store, and present data via open source protocols and applications
- Analyze embedded Linux vendor product offerings