stringtranslate.com

FreeRTOS

FreeRTOS — это ядро ​​операционной системы реального времени [3] [4] [5] для встраиваемых устройств , которое было портировано на 40 микроконтроллерных платформ. Распространяется под лицензией MIT .

История

Ядро FreeRTOS было первоначально разработано Ричардом Барри около 2003 года, а затем разрабатывалось и поддерживалось компанией Барри, Real Time Engineers Ltd. В 2017 году фирма передала управление проектом FreeRTOS Amazon Web Services (AWS). Барри продолжает работать над FreeRTOS в составе команды AWS. [6] С переходом под контроль Amazon последующие выпуски проекта также перешли с лицензирования GPL версии 2 (со специальными исключениями для статического связывания с проприетарным кодом вне самого ядра FreeRTOS) на MIT. [7]

Выполнение

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

Управление процессами

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

ОСРВ обычно не имеют более продвинутых функций, которые есть в операционных системах вроде Linux и Microsoft Windows , таких как драйверы устройств , расширенное управление памятью и учетные записи пользователей. Акцент делается на компактности и скорости выполнения. FreeRTOS можно рассматривать как библиотеку потоков, а не как операционную систему, хотя интерфейс командной строки и абстракция ввода-вывода (I/O) в стиле POSIX доступны.

FreeRTOS реализует несколько потоков, заставляя хост-программу вызывать метод тика потока через регулярные короткие интервалы. Метод тика потока переключает задачи в зависимости от приоритета и схемы планирования по круговой схеме . Обычный интервал составляет от 1 до 10 миллисекунд ( от 11000 до 1100 секунды) через прерывание от аппаратного таймера, но этот интервал часто изменяется в соответствии с конкретным приложением.

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

Основные характеристики

Поддерживаемые архитектуры

Производные

Amazon FreeRTOS

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

СЕЙФЕРТОС

SAFERTOS была разработана как дополнительная версия FreeRTOS с общими функциями, но предназначенная для критически важной для безопасности реализации. FreeRTOS была подвергнута исследованию опасности и работоспособности (HAZOP), и были выявлены и устранены слабые стороны. Результат был пройден через полный жизненный цикл разработки IEC 61508 SIL 3, наивысший уровень для компонента, состоящего только из программного обеспечения.

SAFERTOS был разработан Wittenstein High Integrity Systems в партнерстве с Real Time Engineers Ltd, основным разработчиком [3] проекта FreeRTOS. [12] И SAFERTOS, и FreeRTOS используют один и тот же алгоритм планирования, имеют схожие интерфейсы прикладного программирования ( API ) и в остальном очень похожи, [13] но они были разработаны с разными целями. [14] SAFERTOS был разработан исключительно на языке C для соответствия требованиям сертификации по IEC61508. [15]

SAFERTOS может находиться исключительно в постоянной памяти (ПЗУ) микроконтроллера для соответствия стандартам. [16] При реализации в аппаратной памяти код SAFERTOS может использоваться только в его оригинальной сертифицированной конфигурации. Это означает, что сертификация системы не требует повторного тестирования части ядра проекта. [17] SAFERTOS включен в ПЗУ некоторых микроконтроллеров Stellaris [18] от Texas Instruments. Исходный код SAFERTOS не нужно приобретать отдельно. В этом сценарии использования заголовочный файл C используется для сопоставления функций API SAFERTOS с их расположением в постоянной памяти.

OPENRTOS

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

Смотрите также

Ссылки

  1. ^ "FreeFTOS Github Releases". GitHub . 2024-04-22.
  2. ^ "Лицензирование FreeRTOS с открытым исходным кодом". 2017-12-22.
  3. ^ ab "Исследование рынка встроенных систем 2011 года". EE Times. Архивировано из оригинала 2012-04-02.
  4. ^ Колесник, Сергей (2013-12-08). "Сравнение операционных систем реального времени для микроконтроллеров". Ядро не является ОСРВ, но это может сбивать с толку из-за неподходящего наименования, выбранного для некоторых популярных ядер, например, "freeRTOS".
  5. ^ "Почему RTOS и что такое RTOS?" . Получено 29 августа 2014 г. . Что такое FreeRTOS? … Ограничения по размеру и природа специализированного конечного приложения редко оправдывают использование полной реализации RTOS — или действительно делают использование полной реализации RTOS возможным. Поэтому FreeRTOS предоставляет только основные функции планирования в реальном времени , межзадачную связь, синхронизацию и примитивы синхронизации. Это означает, что его точнее описать как ядро ​​реального времени или исполнительную систему реального времени. …
  6. ^ «RTOS — бесплатная профессионально разработанная и надежная операционная система реального времени для разработки небольших встраиваемых систем».
  7. ^ «Обновление до FreeRTOS V10.0.0 с лицензией MIT».
  8. ^ "Использование FreeRTOS на микроконтроллерах RISC-V". FreeRTOS . Получено 11 сентября 2019 г. .
  9. ^ "Amazon FreeRTOS". Amazon . Получено 28 ноября 2018 г. .
  10. ^ "FAQ: Amazon FreeRTOS". FreeRTOS . Получено 28 ноября 2018 г. .
  11. ^ «Amazon FreeRTOS — новая ОС для IoT». TechCrunch. 29 ноября 2017 г. Получено 4 декабря 2018 г.
  12. ^ "FreeRTOS" . Получено 8 августа 2012 г.
  13. ^ "SmartBotPaper" (PDF) . Архивировано из оригинала (PDF) 2012-07-04 . Получено 8 августа 2012 .
  14. ^ Связь между FreeRTOS и SAFERTOS
  15. ^ "EETimesSafetyCritical" . Получено 8 августа 2012 г.
  16. ^ "Embedded Systems Design Europe". Архивировано из оригинала 23 октября 2012 г. Получено 10 августа 2012 г.
  17. ^ "Texas Instruments" (PDF) . Архивировано из оригинала (PDF) 4 июля 2013 г. . Получено 10 сентября 2012 г. .
  18. ^ Ассортимент продукции TI Stellaris
  19. ^ "OPENRTOS". Системы высокой целостности . Получено 28 ноября 2018 г.
  20. ^ "Лицензирование FreeRTOS с открытым исходным кодом". FreeRTOS . Получено 28 ноября 2018 г. .

Внешние ссылки