Session

Leveraging the OS CPU scheduler to write real-time MT apps

The Linux OS is powerful; here you'll learn some aspects of this power, particularly, how the kernel CPU (or task) scheduler can be leveraged to support the writing of (soft) real-time multithreaded (MT) applications (with C).
First the basics: the (real!) meaning of real-time, the state machine of a Linux process/thread, the meaning of the various POSIX scheduling policies available on the system.
The meat of this talk (and live demo!) will be how you, as a systems / app developer, can leverage the OS by using appropriate Pthread/system call APIs to query and set the CPU scheduling policy and priority, at a *per thread* level of granularity!
We conclude with an overview of the LF Real-Time Linux (RTL) kernel, how to configure the kernel for RT, and deploy it for use (with appropriately written RT apps), thus enabling the ability to use Linux as an RTOS.
Agenda brief:
- What does real-time actually mean
- The Linux process state machine
- How Linux schedules processes and threads
- The POSIX Scheduling Policies and what they mean
- Setting sched policy and priority on an application thread
- Demo MT app; code walkthru & demo
- Overview: making Linux an RTOS (it's done as of 6.11!)

Kaiwan Billimoria

Linux Author, Trainer, Consultant

Bengaluru, India

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top