OSS TanbouSign in with GitHub

provide the FreeRTOS RTOS kernel, ports, scheduling, queues, timers, and memory management for MCU firmware

About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
4,539
Primary language
C
License
MIT
Repository last updated
Aug 26, 2026
On this page

Overview

FreeRTOS-Kernel contains the FreeRTOS kernel source, headers, and processor/compiler ports without the full demo distribution. Version 11.3.1 adds Armv8-M SMP support, periodic-task APIs, and multiple MPU and security-related fixes.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Key features

Embed the scheduler, queues, timers, and core RTOS primitives

Core files such as tasks.c, queue.c, and list.c plus the public headers form the kernel, while the portable directory supplies processor/compiler-specific ports used with FreeRTOSConfig.h.

Sources: [1]

Consume the kernel through CMake FetchContent or a Git submodule

The README documents both FetchContent and submodule integration. CMake consumers provide a freertos_config target, choose FREERTOS_PORT, and select FREERTOS_HEAP when dynamic allocation is used.

Sources: [1][3]

Use Armv8-M SMP and new periodic-task APIs in V11.3.1

V11.3.1 adds SMP support to Armv8-M ports for GCC, ArmClang, and IAR and introduces xTaskPeriodicDelay plus additional task-inspection APIs.

Sources: [2]

Best fit

Fits firmware projects that want only the FreeRTOS kernel dependency

It is appropriate when a project wants to vendor, submodule, or FetchContent the kernel and selected port without the demos and supplementary networking libraries from the classic distribution.

Sources: [1]

Before adoption

A target-specific FreeRTOSConfig.h and processor/compiler port are mandatory

The kernel repository alone is not a complete board project. The README recommends starting from a preconfigured demo for the easiest setup; direct integration requires matching configuration and port choices to the hardware and toolchain.

Sources: [1][3]

V11.3.1 carries security, race, and MPU-related fixes

The release fixes secure-context validation, queue-set type confusion, timer-command validation, a task-count race, and other issues, so projects pinned to 11.x should review patch-level changes rather than only the major/minor version.

Sources: [2]

Official sources

  1. [1]FreeRTOS-Kernel V11.3.1 README(2026-10-04)
  2. [2]FreeRTOS-Kernel V11.3.1 history(2026-10-04)
  3. [3]FreeRTOS-Kernel V11.3.1 CMake configuration(2026-10-04)
  4. [4]FreeRTOS-Kernel MIT license(2026-10-04)
Supplemental curator note

This is distinct from the FreeRTOS/FreeRTOS classic distribution registered separately: this repository contains the kernel and ports only. Always match FreeRTOSConfig.h and the selected port to the actual target.

Try it in 3 steps

  1. 1

    Fetch FreeRTOS-Kernel V11.3.1

    Pin the checkout to the latest stable release tag and fetch only the kernel source and ports.

    git clone --depth 1 --branch V11.3.1 https://github.com/FreeRTOS/FreeRTOS-Kernel.git freertos-kernel-11.3.1
  2. 2

    Configure a host build with the template configuration

    Use the documented CMake options with the GCC POSIX port and template FreeRTOSConfig.h. Replace both with the real MCU port and configuration for firmware work.

    cmake -S freertos-kernel-11.3.1 -B freertos-kernel-11.3.1/build-host -DFREERTOS_CONFIG_FILE_DIRECTORY="$PWD/freertos-kernel-11.3.1/examples/template_configuration" -DFREERTOS_PORT=GCC_POSIX -DFREERTOS_HEAP=4
  3. 3

    Build the kernel library

    Compile the kernel with the selected host port without flashing or touching hardware.

    cmake --build freertos-kernel-11.3.1/build-host -j2
Check the official README

Growth

Growth trends · Last 30 days

4,539 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
0
Open PRs
54

Development activity is still being collected.

Built with

Categories and tags

Categories

GitHub data

GitHub dataView detailed GitHub data
Stars
4,539
Forks
1,625
Watchers
114
Open issues
43
Contributors
234
Owner type
Organization
Primary language
C
License
MIT
Repository last updated
Aug 26, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.

After reading this page, do you know what to do next?