Download FreeRTOS

Quality RTOS & Embedded Software

FreeRTOS website now available in Simplified Chinese
New FreeRTOS Long Term Support version now available.
FreeRTOS Extended Maintenance Program (EMP) registration now open.
FreeRTOS-Plus-TCP v3.0.0 released:
Featured FreeRTOS IoT Integrations:

Implementation Quality Management

Value Proposition
High quality C source code under strict configuration management
Safety critical version ensures dependability
Cross platform support secures time investment
Tutorial books and training to educate engineers
Pre-configured example projects for all supported ports
Free support, quoted as better than some commercial alternatives
Large and growing user base and community
Peace of mind - low cost commercial options can be taken at any time
= A low total cost of ownership, risk free, & compelling solution

RTOS Technology Highlights
Pre-emptive scheduling option Easy to use message passing
Co-operative scheduling option Round robin with time slicing
Fast task notifications Mutexes with priority inheritance
6K to 12K ROM footprint Recursive mutexes
Configurable / scalable Binary and counting semaphores
Chip and compiler agnostic Very efficient software timers
Some ports never completely disable interrupts Easy to use API


FreeRTOS is very strictly quality managed, not just in software coding standards and look and feel, but also in implementation. For example:

  • FreeRTOS never performs a non-deterministic operation, such as walking a linked list, from inside a critical section or interrupt.
  • We are particularly proud of the efficient software timer implementation that does not use any CPU time unless a timer actually needs servicing. Software timers do not contain variables that need to be counted down to zero.
  • Likewise, lists of Blocked (pended) tasks do not require time consuming periodic servicing.
  • Direct to task notifications allow fast task signalling, with practically no RAM overhead, and can be used in the majority of inter-task and interrupt to task signalling scenarios.
  • The FreeRTOS queue usage model manages to combine simplicity with flexibility (in a tiny code size) - attributes that are normally mutually exclusive.
  • FreeRTOS queues are base primitives on top of which other communication and synchronisation primitives are built. The code re-use obtained dramatically reduced overall code size, which in turn assists testing and helps ensure robustness.

In addition, the TÜV SÜD certified SIL 3 SafeRTOS real time kernel was originally derived from FreeRTOS, and has undergone the most stringent analysis and test process - the results of which were fed back into the FreeRTOS code base (when commonality still existed).

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.