.. _sec-freertos-overview:

FreeRTOS (RTOS Kernel) Overview
===============================

FreeRTOS is an open-source, real-time operating system kernel for embedded
devices. It implements a minimalist set of functions, basic task handling and
memory management.

The FreeRTOS kernel has the following characteristics:
  * Preemptive tasks
  * Small footprint
  * Written in C and compiled with various C compilers
  * Unlimited number of tasks can run at the same time
  * Implements queues, binary and counting semaphores, and mutexes
  * Inter-task communication is accomplished using queues

The |SDK| provides support for FreeRTOS and installs FreeRTOS. In other 
words, the FreeRTOS kernel is bundled into the |SDK| with no additional
download/installation required to enable FreeRTOS functionality.
Please refer to the <SimpleLink_SDK_Install_Dir>/docs/Documentation_Overview.html
file to find the release notes for the FreeRTOS version used in this |SDK| release.

.. caution:: 
            The information in this guide is provided for reference and is not
            intended to fully cover every aspect of FreeRTOS. Please refer to
            the |FreeRTOS HOME| as your primary source of documentation with
            regards to FreeRTOS. |FreeRTOS HOME| contains detailed explanations
            and code examples of the constructs briefly discussed in this guide.


.. toctree::
    /freertos/config.rst
    /freertos/power.rst
    /freertos/rov.rst
    /freertos/tasks.rst
    /freertos/software-timers.rst
    /freertos/queues.rst
    /freertos/synchronization.rst
    