Course
RTOS & Real-Time Concepts
Tasks, scheduling, and context switching; mutexes, semaphores, and queues; priority inversion, deadlocks, and hard-vs-soft real time — with a practical FreeRTOS tour.
3h 46m total10 lessonsBeginner friendly
Get started
Enroll to track your progress and unlock the lesson shell.
- Progress tracked per lesson
- Course shows up in your dashboard
- Bookmarks, notes & more (coming soon)
Lesson Content
0/10 done- 11Bare-Metal vs RTOSWhen the super-loop stops scaling: what an RTOS buys you (tasks, priorities, blocking that yields), what it costs (RAM, complexity, concurrency bugs), and when bare-metal is still the right call.20 min
- 22Tasks & the SchedulerA task is a function with its own stack, priority, and state; the scheduler runs the highest-priority ready task. The task lifecycle (Ready/Running/Blocked), the idle task, and vTaskDelay.22 min
- 33Preemptive vs Round-Robin SchedulingHow the scheduler chooses: priority preemption (urgent runs first), round-robin time-slicing among equal priorities, and cooperative scheduling, plus the starvation and fairness tradeoffs.22 min
- 44Context SwitchingHow the kernel pauses one task and resumes another: saving and restoring CPU registers to each task's own stack, on Cortex-M via PendSV, PSP/MSP, and hardware auto-stacking.22 min
- 55Mutexes & SemaphoresCoordinating concurrent tasks: a mutex for mutual exclusion (ownership + priority inheritance) vs a semaphore for signaling and counting, and why you give a semaphore from an ISR, not take a mutex.25 min
- 66Queues & Inter-Task CommunicationPassing data between tasks safely: a kernel queue is a thread-safe blocking FIFO (copy-by-value), the RTOS producer/consumer pattern that replaces shared-global-plus-mutex with message passing.23 min
- 77Priority InversionWhen a high-priority task is stuck behind a low-priority one, and a medium task makes it unbounded. The classic Mars Pathfinder bug, and the fix: priority inheritance (and ceilings).22 min
- 88Deadlocks & How to Avoid ThemTwo tasks each holding a lock the other needs, frozen forever: the four conditions for deadlock, and the fixes (consistent lock ordering, avoiding hold-and-wait, and timeouts).22 min
- 99Hard vs Soft Real-TimeReal-time is about meeting deadlines deterministically, not being fast: hard vs firm vs soft by the cost of a miss, worst-case execution time, schedulability, and what destroys determinism.22 min
- 1010FreeRTOS: A Practical TourTying it together: the FreeRTOS API mapped to every concept (tasks, queues, mutexes, timers, notifications), a worked ISR-to-task app, key FreeRTOSConfig.h knobs, heap schemes, and debugging.26 min
Stay consistent, achieve mastery!
Complete more lessons to level up your skills.