Development of embedded systems in Linux

Development of embedded systems in Linux

Course Summary

This course covers a range of tools for developing embedded systems in Linux.
You will get an overview of the build tools, kernel and boot loader functionality, as well as an overview of a selection of libraries.
The walkthrough includes a number of exercises where you get to try out different aspects of the development process for an embedded Linux system based on an ARM processor called BeagleBone.
The exercises use Buildroot together with gdb and Eclipse.

Background information

Embedded system products have grown in size and functionality from small control and measurement devices to connected products with a wide range of applications.
These can be products with graphical user interfaces or web-based user interfaces that handle many network protocols with different standards such as TCP/IP.
Linux is today the most common choice when developing more powerful and connected embedded systems.
Linux runs on a number of different architectures such as PowerPC, ARM and MIPS and supports all kinds of applications.
It allows you to quickly get the most out of an embedded system using standard tools and applications.  

After the course, you can:

  • Set up the development environment and create a cross-compiler.
  • Setting up and configuring a boot loader.
  • Configure and cross-compile the Linux kernel.
  • Create a root file system with library files and the programs needed to have a fully functional system.
  • Perform a secure update of an Embedded Linux system.

The target group is those who want to quickly get started and develop embedded systems for Linux. After completing the course, you will have the practical tools to develop an embedded system in Linux.

Participants are expected to have basic knowledge of Linux and of software development.

This course has no certification.

Info to come…

Introduction to Embedded Linux

Licenses

Toolchain

  • How to build a cross-compiler including library files
  • Building toolchain with crosstool-ng

Boatloader

  • Overview of different bootloaders
  • Review of the bootloader U-Boot

The Linux kernel

  • The different subsystems
  • Configuring and building the Linux kernel
  • Deivce Tree
  • Cross-compilation of the Linux kernel
  • Handling of core modules during operation
  • Arguments to the Linux kernel

The root file system

  • The Felt Tree
  • boot (Sytem V init, systemd)
  • device files
  • lib files
  • busy box
  • file system
  • build the system
  • Introduction to Yocto

Development environment

  • Cross-compilation of a program
  • NFS root file system

Updates

  • Different types of updates
  • Program for safe updating without destroying the card

 

Course Overview

22 950 kr

2 days

Can’t find a (suitable) date, but are interested in the course? Send in an expression of interest and we will do what we can to find a suitable opportunity.

Customized Courses

The course can be adapted from several perspectives:

  • Content and focus area
  • Extent and scope
  • Delivery approach

In interaction with the course leader, we ensure that the course meets your needs.

Skicka intresseanmälan för utbildningen

Send an expression of interest for the training