Company / developer | Richard Barry & FreeRTOS Team |
---|---|
OS family | Real-time operating systems |
Working state | Current |
Source model | Free Software/Open Source |
Latest stable release | 7.0.1 / May, 2011 |
Marketing target | Embedded devices |
Supported platforms | ARM (ARM7, ARM9, Cortex-M3), Atmel AVR, AVR32, HCS12, MicroBlaze, MSP430, PIC, Renesas H8/S, SuperH, RX, x86, 8052, Coldfire, V850, 78K0R, Fujitsu MB91460 series, Fujitsu MB96340 series, Nios II |
Kernel type | Microkernel |
License | Modified GPL |
Official website | http://www.freertos.org/ |
FreeRTOS is a real-time operating system for embedded devices, being ported to several microcontrollers. It is distributed under the GPL with an optional exception. The exception permits users' proprietary code to remain closed source while maintaining the kernel itself as open source, thereby facilitating the use of FreeRTOS in proprietary applications.[1]
Contents |
FreeRTOS is designed to be small and simple. The kernel itself consists of only three or four C files. To make the code readable, easy to port, and maintainable, it is written mostly in C, but there are a few assembly functions included where needed (mostly in architecture specific scheduler routines). The download contains prepared configurations and demonstrations for every port and compiler, allowing rapid application design. The FreeRTOS.org site also contains RTOS tutorials, details of the RTOS design and performance comparison results for various microcontrollers.
FreeRTOS has recently spawned a spin off project called SafeRTOS. SafeRTOS is based on the FreeRTOS code base but has been updated, documented, tested and audited to enable its use in IEC 61508 safety related applications.
Another related project is OpenRTOS, which has an identical code base to FreeRTOS but with different licensing. The OpenRTOS license removes all reference to the GPL and its implications. For example, one of the conditions of using FreeRTOS in a commercial product is that the user is made aware of the use of FreeRTOS and the source code must be provided upon request. OpenRTOS doesn't have this requirement.