Features

Everything you need from an RTOS, nothing you don't. Bring your own HAL.

Kernel

Soft & Hard real-time

Mixed cooperative and preemptive scheduling, or KERNEL_HRT with kernel-monitored deadlines and miss callbacks.

Static & Dynamic task models

Create tasks once at startup, or create and exit them at runtime.

Time-slicing

Optional ThreadX-style per-task time quantum, adjustable at run time.

Tick or Tickless

Periodic ticks for simplicity or timer-based wakeups to maximize sleep time.

Multi-core (AMP)

One STK instance per physical core for lock-free performance.

Extensible

Attach your own scheduling algorithm by implementing the C++ strategy interface.

Protection & safety

MPU support

Privileged and user tasks, up to 6 per-task regions reprogrammed on every context switch, hardware stack guard.

Commercial

ARM TrustZone

Secure-only scheduling in the open-source driver. Full Secure plus Non-Secure scheduling via the commercial interface.

Commercial

Mixed-criticality scheduling

MCAS (2-level) and MCAS4 (4-level) adaptive schedulers with automatic escalation and recovery.

Services & ecosystem

Synchronization API

Rich primitives in stk::sync.

Heap-free memory API

BlockMemoryPool and BytePool allocators.

Thread-local storage

Per-task TLS via a dedicated CPU register.

Compatibility layers

FreeRTOS, CMSIS-RTOS2 and pthread wrappers.

Traceable

SEGGER SystemView scheduling traces.

Third-party ports

lwIP, mbedTLS, TinyUSB and Raspberry Pi Pico SDK.

Built-in scheduling strategies

StrategyModeLicense
Round-Robin, SWRRSoft / HRTMIT
Fixed-Priority (32 levels, priority inheritance)Soft / HRTMIT
Preemption-Threshold (PTS, optional time-slicing)SoftMIT
RM, DM, EDF (with WCRT analysis for RM/DM)HRTMIT
MCAS (2-level), MCAS4 (4-level)HRTCommercial