FreeRTOS

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
FreeRTOS
Logo freeRTOS.png
Разработчик

Richard Barry & FreeRTOS Team

Семейство ОС

ОСРВ

Последняя версия

9.0.0 (25 мая 2016 года)

Поддерживаемые платформы

ARM (ARM7, ARM9, Cortex-M3, Cortex-M4, Cortex-A), Atmel AVR, AVR32, HCS12, MicroBlaze, Cortus (APS1, APS3, APS3R, APS5, FPF3, FPS6, FPS8), MSP430, PIC, Renesas H8/S, SuperH, RX, x86, 8052, Coldfire, V850, 78K0R, Fujitsu MB91460 series, Fujitsu MB96340 series, Nios II, Cortex-R4, TMS570, RM4x

Тип ядра

микроядро

Лицензия

MIT

Состояние

Актуальное

Веб-сайт

freertos.org

Commons-logo.svg FreeRTOS на Викискладе

FreeRTOS — многозадачная операционная система реального времени (ОСРВ) для встраиваемых систем. Портирована на 35 микропроцессорных архитектур[⇨]. Распространяется под лицензией MIT с 2017 года[1]. До 2017 года распространялась под модифицированной лицензией GPL с исключением, позволяющим разработчику присвоить модифицированный код операционной системы.

Поддерживаемые процессоры[править | править код]

FreeRTOS поддерживает процессоры следующих архитектур[2]:

Свойства[править | править код]

Операционная система реального времени FreeRTOS рассчитана на работу в таких, задаваемых особенностями массовых микроконтроллеров, условиях, как низкое быстродействие аппаратуры и малый объём оперативной памяти, отсутствие поддержки на аппаратном уровне таких механизмов операционных систем, как блок управления памятью (MMU) и механизмы реализации многозадачности, такие, как быстрое переключение контекста[3].

Начиная с версии 4, FreeRTOS позволяет использовать сопрограммы — задачи, использующие невытесняющую многозадачность и требующие очень мало оперативной памяти для запуска.

Диспетчер (англ. scheduler) системы очень маленький (занимает, в зависимости от платформы и настроек ядра, 4-9 килобайт) и простой, однако позволяет задать различные приоритеты процессов, вытесняющую и невытесняющую многозадачность, семафоры и очереди.

FreeRTOS мала и проста. Ядро системы умещается в 3—4 файлах, в зависимости от того, используются сопрограммы или нет.

Дистрибутив[править | править код]

Дистрибутив FreeRTOS может быть свободно скачан с сайта разработчика, бесплатно и без предоставления какой-либо информации (регистрации, заполнения каких-либо форм и т. п.). Документация в состав самого дистрибутива не входит, она доступна на сайте разработчика.

В состав дистрибутива входят подготовленные конфигурационные файлы и демонстрационные программы для каждой архитектуры, что позволяет очень быстро начать новую разработку. Для читаемости и лёгкости модификации код большей частью написан на Си, ассемблерные вставки используются в минимальном объёме в платформоспецифичных участках[4]. Сайт разработчика также содержит подробное руководство по использованию и портированию FreeRTOS. В качестве кросс-компилятора предполагается использование GCC.

Варианты[править | править код]

Проект «SafeRTOS»[5] — доработанный, документированный, протестированный и прошедший сертификацию (в мае 2007) на соответствие стандарту безопасности IEC 61508[en] вариант FreeRTOS. Это коммерческий продукт, другой проприетарный коммерческий вариант системы, OpenRTOS отличается от свободной версии помимо лицензии и предоставляемых гарантий лишь некоторыми деталями[4].

Примечания[править | править код]

  1. Announcing FreeRTOS Kernel Version 10 | Amazon Web Services (en-US), Amazon Web Services (29 ноября 2017). Проверено 30 ноября 2017.
  2. Полный список поддерживаемых архитектур (англ.)
  3. Курниц, 2011, № 2. Что такое ОС для МК?, с. 96.
  4. 1 2 Курниц, 2011, № 2. Обзор FreeRTOS, с. 98-99.
  5. RTOS, High Integrity Systems (9 ноября 2011). Проверено 4 января 2017.

Литература[править | править код]

Ссылки[править | править код]