Embedded Linux Essentials
This is an intensive course for kick-starting development of embedded Linux systems. It is targeted to those that have little or no prior knowledge of embedded Linux.
The course is divided into three main categories:
Introduction to embedded Linux
Building embedded Linux systems
Linux driver development
The first section covers topics like: Platform architecture (boot loader, kernel, root file system, services), system operation details (such as: startup procedure, busybox, C-libraries, file systems suited for embedding, flash disk considerations, …) and open source licenses.
The second part is an introduction to the Yocto Project including topics as: bitbake principles and operation, recipes, variables, operators, layers, SDK’s and how to build images for a specific target.
The final section is an introduction to Linux driver development including: kernel configuration and building, kernel architecture, driver classes, driver debugging, exchanging data with user space, file operations, memory management, blocking/non-blocking operation.
You will practice skills through the following exercises:
Configure, setup and install the extensible SDK-environment from Yocto.
Use the extensible SDK for building target images.
Add package to the target image
Cross-compile the kernel
Build a simple driver
Develop a a basic character device driver
Implement blocking read/writeThe exercises will be executed in a cloud environment, but the course will provide all details on how to re-create an identical build machine on a computer of your own.
Olavi Kumpulainen
is an Electrical engineer who has been programming since 1977. Olavi specializes in embedded systems and has previously worked in medtech, networks, and secure systems for the transportation industry.
