5 day training in Mainz
System programming and real time with embedded Linux
Calendar
In this 5-day course you will learn how to use embedded Linux and you will be able to develop software for it.
All exercises are carried out directly on the AM335x embedded board. The participants receive the embedded board and the USB hard drive with Linux installation, which was used in the seminar. This means that what you have learned can also be reproduced exactly after the seminar.
To the speaker
Andreas Klinger, IT Klinger
has been a trainer and developer in the field of system-related software development with a focus on driver development, embedded Linux and real-time since 1998. As a Linux specialist, he deals with the internal structure of the kernel, the system mechanisms and, above all, their use in embedded systems.
In 2011, 2014 and 2018 it was honored with the Speaker Award Audience Award from visitors to the Embedded Software Engineering Congress. He has proven his expertise with a whole series of specialist articles in electronics practice and in the ESE report, as well as with a whole series of commits for the Linux kernel.
Requirements
- Safe handling of the shell
- good programming skills in C
Price per person is €1.995 net including phyBOARD-Wega, power supply, SD card.
Minimum number of 4 people
Select the period that suits you below and register for the online training.
Description:
- Creation of system-related programs for embedded Linux systems
- How the Linux API works and its background are discussed in detail
- Tracing applications on embedded Linux systems
- Identifying latencies and bottlenecks
- Get to know the structure and functionality of real-time Linux with the RT preemption patch
- Special features in the development of real-time software
Agenda:
- Structure of the Linux kernel, syscall interface
- Use of files: open, read, write
- blocking behavior and poll
- Memory mapping with mmap
- Processes and signals
- Interprocess communication: message queue,
Semaphore, shared memory - Multithreading, Posix threads, mutexes, barriers
- Posix timer
- Tracing infrastructure in the Linux kernel, ftrace
- Use of trace-cmd, kernelshark and perf
- Tracing events, trace printk, tracing markers
- Tracing of schedulers, interrupts, timers, network, GPIO, I2C, SPI
- Measurement of latencies
- Use of kprobe and uprobe
- uftrace
- What does real time mean?
- Linux scheduling model: RT, deadline, batch and idle tasks
- Special features of the RT patch; Interrupt threading
- Synchronization and PI mutex• Measure latency and generate system load
- Application development for real-time systems
- Waiting for events, page faults, priority inversion
Other interesting topics: