Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| realtime [2020/07/10 15:11] – [Scheduler] admin | realtime [2025/11/27 11:21] (current) – admin | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | |||
| https:// | https:// | ||
| https:// | https:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ====== Learning ====== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | ====== Core partitioning ====== | ||
| + | |||
| + | User-space partitioning, | ||
| + | |||
| + | Dual-OS partitioning, | ||
| + | |||
| + | https:// | ||
| + | |||
| ====== Multitasking ====== | ====== Multitasking ====== | ||
| Line 22: | Line 39: | ||
| dl includes SCHED_DEADLINE policy (augmented EDF). | dl includes SCHED_DEADLINE policy (augmented EDF). | ||
| + | |||
| + | ====== Utilities ====== | ||
| + | * chrt | ||
| + | * taskset | ||
| + | |||
| + | ==== Linux specific APIs ==== | ||
| + | * sched_setattr | ||
| + | * sched_setaffinity | ||
| + | * CPU_SET | ||
| + | * pthread_setaffinity_np | ||
| + | |||
| + | ==== POSIX realtime APIs ==== | ||
| + | * sched_setscheduler | ||
| + | * ... | ||
| + | |||
| + | |||
| + | ==== Benchmarking ==== | ||
| + | |||
| + | Latency measurement with **cyclictest** (results for SCHED_FIFO). | ||
| + | |||
| + | Sources of latency: | ||
| + | * Kernel system call | ||
| + | * ISR | ||
| + | * Kernel locks | ||
| + | * Priority inversions | ||
| + | * Timers | ||
| + | * Page faults | ||
| + | |||
| + | **Ftrace** | ||
| + | |||
| + | **Kernel Shark** | ||
| + | |||
| + | **LLTng** | ||