5 Days - $2975

No open enrollment classes scheduled at this time.

Contact Us

Get advanced Linux training on the key steps to developing an embedded Linux product. Gain real world experience through extensive hands-on practice with target devices.

Course Description

Linux Foundation Training Program Director Jerry Cooperstein talks about our Embedded Linux Development courses.

Embedded Linux Development is designed to provide experienced developers a solid grounding in the methods used to adapt the Linux kernel and user-space libraries and utilities to particular embedded environments, such as those in use in consumer electronics, military, medical, industrial, and auto industries. This five day course includes extensive hands-on exercises and demonstrations, focused upon the tools necessary for developing embedded Linux devices. Upon mastering the material you will have a basic understanding of:

  • The Linux kernel architecture, emphasizing the essential points relevant to adapting the kernel to a custom embedded platform.
  • The techniques for right sizing the system to meet project constraints
  • The multitude of resources available for constructing a cross development environment for embedded projects
  • The options available for populating libraries and application user-spaces to meet the goals and constraints of embedded systems

You will step through all of these phases of Embedded Linux Development with laboratory exercises on an embedded board (provided by the Linux Foundation). These exercises give you hands-on practice you can take directly back to your project. After class, students will get to take their embedded Linux development kit home for further practice.

Students are expected to provide their own computers for the class.

100% of students who took this course agree that the instructor was an expert.

Why Choose Linux Foundation Training

There are many reasons to choose Linux Foundation Training:

  1. The Linux Foundation is the non-profit organization that hosts the Linux project, employs Linux creator Linus Torvalds and hosts kernel.org (where all Linux kernel updates are released). With 100+ employees (and growing!) across North America, Europe and Asia, we partner with clients for the long run.
  2. Being so close to the kernel, we are constantly updating our training to ensure that we are teaching you the most up-to-date information.
  3. Linux Foundation Training is unique in that all our training courses are designed to work on all major Linux distributions (including RedHat, Ubuntu and SUSE).
  4. We don't sell any software or support services so there's no hidden sales agenda in our material. Our only goal is to help you learn the material.
  5. When you train with The Linux Foundation, you're learning from instructors who are comfortable across all major Linux distributions and can answer student questions regardless of the distribution you're using for the class. You are truly learning from the experts.

Course Materials

As part of your registration, a printed copy of the course manual will be provided. If you are attending in person the material will be available onsite on the day the class begins. If you are attending virtually it will be mailed to you the week prior to the class. Please contact us at training@linuxfoundation.org if you haven't received it 2 business days prior to the start of class.

For more details view the Course Outline.


The course is primarily intended for experienced developers programmers and engineers who are interested in learning how to adapt Linux to an embedded system, especially those who have been assigned to a team tasked with designing such a system. The purpose here is to shorten the learning curve by providing a guided tour of the relevant points within the architecture of Linux systems.

While there is some discussion of kernel programming and how to write device drivers and other kinds of kernel modules, LFD411 is not primarily a programming class.

While there is some discussion of applications, this course focuses on the plumbing, the internals and design of embedded devices, not on how to write applications to run on them.


You should:

  • Be familiar with basic Linux (UNIX) utilities such as ls, grep and tar, and be familiar with command shells (bash) and scripts.
  • Be comfortable using any of the available text editors (e.g. vi, emacs, etc.).
  • Be proficient in the C programming language.
  • Know the basics of compiling and linking programs, constructing Makefiles, etc.; i.e. be comfortable doing development n a Linux or UNIX environment.
  • Experience with any major Linux distribution is helpful but not strictly required.

If you have a basic understanding of the top-level principles of cross development, where a host system is used to develop and compile software that runs on a different target system, it would be helpful.

The course will survey the wide range of CPUs supported by the Linux community that are used in embedded systems, as well as some other hardware components that have good support. The purpose is to introduce resources that can be used to guide component selection when designing embedded systems.

Ways To Train

Event Type: Training Course

Classroom Linux Training [?]

  • Delivered in conveniently located training centers
  • Please check schedule for exact location and duration

On-Site Corporate Linux Training [?]

  • All courses can be delivered at your office for private, on-site training
  • Contact us for more information

Custom Corporate Linux Training [?]

  • All courses can be customized for private, on-site training
  • Contact us for more information