Введение

Операционная система реального времени

FreeRTOS — это ядро операционной системы реального времени для встраиваемых устройств, портированное на 35 платформ микроконтроллеров. Она распространяется под лицензией MIT.

История

Ядро FreeRTOS было первоначально разработано Ричардом Барри примерно в 2003 году, а затем разрабатывалось и поддерживалось компанией Барри, Real Time Engineers Ltd. В 2017 году компания передала управление проектом FreeRTOS компании Amazon Web Services (AWS). Барри продолжает работать над FreeRTOS как часть команды AWS.

Реализация

FreeRTOS разработана, чтобы быть компактной и простой в использовании. Она в основном написана на языке программирования C, что облегчает её перенос и поддержку. Также она включает в себя несколько функций на языке ассемблера, где это необходимо, преимущественно в подпрограммах планировщика, специфичных для конкретной архитектуры.

Amazon FreeRTOS (полное согласие)

Amazon предоставляет устаревшее расширение FreeRTOS, представляющее собой FreeRTOS с библиотеками для поддержки Интернета вещей (IoT), в частности, для Amazon Web Services. Начиная с версии 10.0.0 в 2017 году, Amazon взяла на себя ответственность за поддержку кодовой базы FreeRTOS, включая все обновления исходного ядра.

Сафертос

SAFERTOS был разработан как дополнение к FreeRTOS, имея общие функции, но предназначенный для применений, критичных к безопасности. FreeRTOS был подвергнут анализу опасностей и работоспособности (HAZOP), в ходе которого были выявлены и устранены слабые места. Результат прошел полный цикл разработки в соответствии со стандартом IEC 61508 SIL 3 – наивысший уровень для компонента, состоящего только из программного обеспечения. SAFERTOS был разработан компанией Wittenstein High Integrity Systems в партнерстве с Real Time Engineers Ltd, являющейся основным разработчиком. SAFERTOS и FreeRTOS используют один и тот же алгоритм планирования, имеют схожие интерфейсы прикладного программирования (API) и в целом очень похожи, однако были разработаны с различными целями. SAFERTOS был разработан исключительно на языке C для соответствия требованиям сертификации по стандарту IEC 61508. SAFERTOS может размещаться исключительно в энергонезависимой памяти (ROM) микроконтроллера для обеспечения соответствия стандартам. При реализации кода SAFERTOS в аппаратной памяти, он может использоваться только в исходной, сертифицированной конфигурации. Это означает, что при сертификации системы не требуется повторное тестирование ядра разработки. SAFERTOS включен в ROM некоторых микроконтроллеров Stellaris от Texas Instruments. Исходный код SAFERTOS не требует отдельной покупки. В этом сценарии использования файл заголовка C используется для сопоставления функций SAFERTOS API с их расположением в энергонезависимой памяти.

Открытый

OPENRTOS — коммерчески лицензируемая версия Amazon FreeRTOS, продаваемая компанией Wittenstein High Integrity Systems. Этот продукт предоставляет поддержку и позволяет компаниям использовать ядро и библиотеки Amazon FreeRTOS без лицензии MIT a:FreeRTOS.