|
|
|
History
The FreeRTOS kernel was originally developed by Richard Barry around 2003, and was later
developed and maintained by Richard's company, Real Time Engineers Ltd.
FreeRTOS was a runaway success, and in 2017
Real Time Engineers Ltd. passed stewardship of the FreeRTOS project to
Amazon Web Services (AWS).
Richard continues to work on FreeRTOS as part of an AWS team. Read
more on the
AWS open source blog, and the FAQ question Why Have Amazon Taken Stewardship of FreeRTOS?.
About Amazon Web Services
Amazon Web Services provides a highly reliable, scalable, low-cost
cloud infrastructure platform that powers hundreds of thousands of
businesses in 190 countries around the world. In 2015 AWS added
specific Internet of Things (IoT) capabilities, and now offers
Amazon FreeRTOS to
help users securely connect their MCU devices to the cloud.
Amazon FreeRTOS uses the FreeRTOS kernel, and adds libraries that
make small low-power edge devices easy to program, deploy, secure,
connect, and manage. You do not need to be an AWS customer to use
Amazon FreeRTOS as the source code is provided under the
MIT license.
|
About the FreeRTOS Kernel
[Also see the "What is an RTOS?" and "Why use an RTOS" pages]
FreeRTOSTM is a
market leading
RTOS from Amazon Web Services that supports more than 35 architectures
and was downloaded once every 3 minutes during 2017. It is professionally developed, strictly quality controlled, robust,
supported, and
free to embed in commercial products without any requirement to expose your
proprietary source code.
FreeRTOS has become the de facto standard RTOS for microcontrollers by
removing common objections to using free
software, and in so doing, providing a truly compelling free software model.
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).
Mission
"Provide a free product that surpasses the quality and service
demanded by users of commercial alternatives"
The original mission of the FreeRTOS project was to provide a free RTOS solution that was
easy to use. That is easy to build on a Windows (or Linux)
host computer, without having to figure out which source files are required, which
include paths are required, or how to configure the real time debugging environment.
This has been achieved through the provision of pre-configured, build-able,
example projects for each
officially support port.
Naturally, as the FreeRTOS started circa 2003, how these projects
are created has evolved for the better, and some original projects remain that
don't demonstrate all of the RTOS functionality, or have become
stale. However, each project is fully tested before it is added to the FreeRTOS
zip file distribution, and many RTOS demo projects undergo active maintenance before
each new release. Responding to user feedback, each new demo added to the
distribution now also includes a simple "blinky" style getting started configuration
to compliment the comprehensive examples.
Design Goals
The primary design goals are:
-
Easy to use
-
Small footprint
-
Robust
FreeRTOS Founder
The FreeRTOS project was founded by Richard Barry. Richard graduated with
1st Class Honours in Computing for Real Time Systems. He's been directly involved
in the start up of several companies, primarily working in the industrial
automation and aerospace and simulation markets. Richard is currently a Principal Engineer
at Amazon Web Services, owners and maintainers of the FreeRTOS project.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|
|
Latest News
NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.
Meet Richard Barry and learn about running FreeRTOS on RISC-V at FOSDEM 2019
Version 10.1.1 of the
FreeRTOS kernel is available for
immediate download. MIT
licensed.
View a recording
of the "OTA Update Security and Reliability" webinar,
presented by TI and AWS.
Careers
FreeRTOS and other embedded software careers at AWS.
FreeRTOS Partners
|