OSS探訪GitHubでログイン

MCU向けFreeRTOSのtask scheduling・queue・timer・memory管理を提供するRTOS kernel本体

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
4,539
主要言語
C
ライセンス
MIT
リポジトリ最終更新
2026/08/26
ページ内ナビ

概要

FreeRTOS-KernelはFreeRTOSのkernel source/headerとprocessor/compiler別portを切り出したrepositoryです。V11.3.1では従来のsingle-core用途に加え、Armv8-M向けSMP、periodic task API、複数のMPU/security関連修正などが入っています。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

task・queue・timer等のRTOS kernel機能をapplicationへ組み込む

rootのtasks.c・queue.c・list.cなどとinclude headerがkernel本体を構成し、portable配下のportとFreeRTOSConfig.hを組み合わせてtarget向けschedulerを構築します。

出典:[1]

CMake FetchContentまたはgit submoduleとして直接取り込む

READMEはCMake FetchContentとgit submoduleの両方を案内しています。CMakeではfreertos_config target、FREERTOS_PORT、必要に応じてFREERTOS_HEAPをproject側から指定します。

出典:[1][3]

V11.3.1でArmv8-M SMPとperiodic task APIを追加する

V11.3.1はGCC・ArmClang・IAR向けArmv8-M portにSMP supportを追加し、xTaskPeriodicDelayやtask列挙用APIも追加しています。

出典:[2]

向いている用途

FreeRTOS kernelだけを依存関係として組み込みたいfirmwareに向く

full distributionのdemoやnetwork libraryを含めず、kernelと必要なportだけをvendor/submodule/FetchContentで管理したいembedded projectに適します。

出典:[1]

導入前の確認

FreeRTOSConfig.hと正しいprocessor/compiler portの選定が必須

kernel単体ではtarget設定が完成しません。READMEは最初はpre-configured demoから始める方法を最も容易と説明しており、直接統合する場合はconfigとportをhardware/toolchainに合わせます。

出典:[1][3]

11.3.1にはsecurity・race・MPU周辺の修正が含まれる

11.3.1ではSecureContext validation、queue set type confusion、timer command validation、task count raceなど複数の安全性修正が入っています。既存11.xを固定している場合もrelease historyを確認してpatch levelを選びます。

出典:[2]

参考にした公式資料

  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)
編集部からの補足

直前に登録したFreeRTOS/FreeRTOSはdemoやsupplementary libraryを含むclassic distributionで、このrepositoryはkernelとportsのみです。targetに合うFreeRTOSConfig.hとportを必ず選んでください。

3ステップで試す

  1. 1

    FreeRTOS-Kernel V11.3.1を取得する

    最新stable release tagへ固定し、kernel sourceとportsだけを取得します。

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

    template configurationでhost向けCMake configureを行う

    README/CMakeListsの設定項目を使い、GCC POSIX portとtemplate FreeRTOSConfig.hでbuild graphを生成します。本番firmwareではtarget MCU用port/configへ置き換えてください。

    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

    kernel libraryをbuildする

    hardwareへflashせず、選択したhost portでkernel sourceがcompileできることを確認します。

    cmake --build freertos-kernel-11.3.1/build-host -j2
公式READMEで確認

成長

成長の推移 · 直近30日

4,539 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
0
Open PR
54

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

カテゴリ

GitHubデータ

GitHubのデータGitHubの詳細データを見る
Stars
4,539
Forks
1,625
Watchers
114
Open Issues
43
Contributors
234
所有者種別
Organization
主要言語
C
ライセンス
MIT
リポジトリ最終更新
2026/08/26

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?