Реклама


FreeRTOS

FreeRTOS
Logo freeRTOS.png
Разработчик Richard Barry & FreeRTOS Team
Семейство ОС ОСРВ
Последняя версия 10.2.0 (25 февраля 2019 года)
Поддерживаемые платформы ARM (ARM7, ARM9, Cortex-M0, 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
Состояние Актуальное
Репозиторий исходного кода github.com/FreeRTOS/Free…
Веб-сайт freertos.org
Commons-logo.svg Медиафайлы на Викискладе

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

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

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

Описание[ | код]

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

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

Версия 9.1.0 получила поддержку компилятора ARM Compiler 6.

Ядро системы умещается в несколько файлов.

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

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

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

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

Amazon FreeRTOS[ | код]

Amazon FreeRTOS отличается поставкой дополнительных библиотек, упрощающих организацию безопасного соединения устройств на базе микроконтроллеров с облачными сервисами AWS IoT Core или более мощными устройствами, работающими под управлением AWS Greengrass. В Amazon FreeRTOS обеспечена поддержка TLS 1.2, PKCS#11, шифрования данных, проверки целостности прошивки по цифровой подписи. Предложены средства для обновления прошивки в режиме OTA (over-the-air). Сетевой стек включает поддержку MQTT, TCP/IP и Wi-Fi. Для выбора и установки программных компонентов прошивки предлагается управляющий интерфейс Amazon FreeRTOS Console. Специфичные для Amazon FreeRTOS компоненты, как и ядро FreeRTOS, распространяются под лицензией MIT.

SafeRTOS, OpenRTOS[ | код]

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

Примечания[ | код]

  1. Announcing FreeRTOS Kernel Version 10 | Amazon Web Services (англ.), Amazon Web Services (29 November 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.

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

Ссылки[ | код]

Реклама