Skip to content
UPEEC

RTOS and Embedded Software

Real-time operating systems, embedded Linux and the synchronisation tools for multitasking firmware.

Advanced
Comments 0

This is an overview — pick a sub-topic below.

Sub-topics (21)

FreeRTOS

The most widely used open-source RTOS (MIT licence), maintained by AWS.

Intermediate♥ 0🔖 0💬 0

Zephyr RTOS

A Linux Foundation RTOS with device tree, Kconfig, networking, BLE and hundreds of supported boards.

Advanced♥ 0🔖 0💬 0

ThreadX (Eclipse ThreadX)

A small, fast, safety-certified RTOS, formerly Azure RTOS, now open source under Eclipse.

Advanced♥ 0🔖 0💬 0

RTEMS

Real-Time Executive for Multiprocessor Systems — open-source RTOS used in space missions.

Advanced♥ 0🔖 0💬 0

QNX

A commercial microkernel real-time OS used in cars, medical and industrial systems.

Advanced♥ 0🔖 0💬 0

VxWorks

A commercial RTOS from Wind River in aerospace, defence and industrial systems.

Advanced♥ 0🔖 0💬 0

PREEMPT_RT Linux

Real-time patches (now merged in mainline Linux 6.12+) that make the kernel fully preemptible for low, bounded latency.

Advanced♥ 0🔖 0💬 0

Embedded Linux

Linux on embedded processors: bootloader, kernel, device tree and a small root file system.

Advanced♥ 0🔖 0💬 0

Yocto Project

A framework for building custom embedded Linux distributions from recipes and layers.

Expert♥ 0🔖 0💬 0

Buildroot

A simpler tool for generating small embedded Linux systems (toolchain, kernel, root file system).

Advanced♥ 0🔖 0💬 0

U-Boot

The standard bootloader for embedded Linux: initialises hardware, loads kernel and device tree.

Advanced♥ 0🔖 0💬 0

Linux Device Drivers

Kernel modules that expose hardware to user space (character, block, network, platform drivers).

Expert♥ 0🔖 0💬 0

POSIX

Portable OS interface: threads (pthreads), files, signals, timers.

Intermediate♥ 0🔖 0💬 0

Task Scheduling

How an RTOS chooses which task runs: fixed-priority preemptive scheduling with optional time slicing.

Intermediate♥ 0🔖 0💬 0

Priority Inversion

A high-priority task waits for a lock held by a low-priority task, while a medium task runs.

Advanced♥ 0🔖 0💬 0

Semaphores

Signalling and counting primitives.

Intermediate♥ 0🔖 0💬 0

RTOS Mutexes

Locks for shared resources, with ownership and priority inheritance.

Intermediate♥ 0🔖 0💬 0

RTOS Queues

Thread-safe FIFO buffers that pass data between tasks and from ISRs to tasks.

Intermediate♥ 0🔖 0💬 0

Event Groups

Sets of flag bits that tasks can wait on (any or all).

Intermediate♥ 0🔖 0💬 0

Memory Pools

Fixed-size block allocators with deterministic timing and no fragmentation.

Intermediate♥ 0🔖 0💬 0

Inter-Task Communication

Queues, semaphores, event flags, mailboxes, stream/message buffers and task notifications.

Intermediate♥ 0🔖 0💬 0

Spotted a mistake or want to add detail? Suggest an improvement — Content Contributors' edits are reviewed by editors before they go live.

Discussion (0)

Sign in or join free to ask questions and discuss this topic.