Embedded Linux Training

Learn how to develop an embedded Linux system

Objectives and target audience

This course targets engineers who wish to use the Linux system in new embedded projects, and people supporting customers developing such systems. In five days, through theory and practical labs, the course makes you familiar with the architecture of an embedded Linux system, how to build such a system, how to take advantage of open source components to implement system features and reduce development costs, and details how to develop and debug your own applications in an embedded environment.

At the end of this course, you will be ready to start a project using embedded Linux, from system building to application development.


Here are the main topics that we cover:
◾training desktopIntroduction to embedded Linux
◾C libraries. Building a cross-compiling toolchain
◾Bootloaders. Focus on U-boot.
◾Configuring, (cross)compiling and booting a Linux kernel
◾Creating a simple, BusyBox based root filesystem from scratch
◾Block filesystems
◾Flash filesystems – Manipulating flash partitions
◾Cross-compiling libraries and applications
◾Embedded system building tools
◾Lightweight tools for embedded systems. Graphical toolkits
◾Developing and debugging applications for the embedded system
◾Implementing realtime requirements
◾System optimizations

See our agenda for content details.

All the training materials we use during this course are freely available. Before the session, you can then check that they correspond to your needs.

By the way, you can also see evaluations from previous sessions. In the same way we are transparent with our training materials, we share all the evaluations that we collect, not only the good ones.

Practical labs

Atmel SAMA5D3 XplainedEach lecture in our course is followed by a practical implementation, representing 50% to 60% of the whole course time. Labs are performed on an embedded ARM board (SAMA5D3 Xplained board from Atmel, based on a Cortex A5 processor), on which you will progressively implement an embedded Linux system.

Our practical labs can also be performed on the IGEPv2 board from ISEE, based on a TI DM3730 processor. Don’t hesitate to ask us if you are interested in such an option.


Participants need to be familiar with the UNIX or Linux command line interface. Those who aren’t are asked to do some self training on the topic, for example by using our training materials. This way, they won’t waste time during practical labs because of issues using the operating system environment.