- Migrating RTOS device drivers to embedded Linux
- Mobilinux DPM programmer's guide
- Tips for improving embedded Linux startup time
- Migrating legacy VxWorks applications to Linux
- Linux for real-time webinar
- Embedded Linux power management on Atom webinar
- Migrating VxWorks applications to Linux webinar
- Linux: Buy or Build? Weighing your options webinar
EMB510: System Development Jump-Start using MontaVista Linux
Overview
This is an advanced, four-day hands-on programming course focusing on system development for embedded systems using MontaVista Linux. Presented at various locations or on-site at your facility, this instructor-led course provides the skills needed to successfully develop, test and integrate complex software including multi-threaded processes and kernel modules appropriate to embedded products.
Participants
Students should be professional software developers building embedded systems using MontaVista Linux.
Prerequisites
Students are expected to be proficient in the C programming language and well-versed in operating system concepts, and have some familiarity with Linux or a comparable development system.
Objectives
- Gain familiarity with the environment and tools available to develop embedded Linux systems and applications
- Create application projects using DevRocket
- Build and boot an embedded Linux target system from source
- Develop and debug a multi-threaded applications using IPC mechanisms
- Using timers and IPC mechanisms in user space
Description
This course prepares developers for creating embedded systems using MontaVista Linux Professional Edition.
Instruction begins with an overview of embedded Linux concepts and an introduction to the development environment and tools and techniques for cross-development with MontaVista Linux. Special attention is given to the use of Montavista DevRocket designed to facilitate system software and applications development.
In the run-time environment, Linux memory model, processes, POSIX threads, synchronization and communication mechanisms are examined along with considerations of performance, debugging and maintainability. Linux timers, networking and filesystem services are discussed in detail. Linux services available in these areas are briefly described and placed in perspective with the user-level services in the process/thread domain.
Hands-on exercises supplement the lecture materials with practical challenges modeled on actual development experience. Exercises range from simple cookbook steps in completing common but not otherwise obvious procedures up to and including significant development challenges that require thought, initiative and creativity to successfully resolve.


