2016-01-10 2 views
0

Если мы уже можем запускать программы на Cortex-m, как микроконтроллеры, зачем нам даже устанавливать RTOS (или другие операционные системы)? Какие преимущества он может обеспечить, если микроконтроллер предназначен для многоцелевого использования?Зачем нам нужна RTOS на ARM Cortex-M

ответ

-1

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

+0

Спасибо, мне все еще нужна операционная система, если мой микроконтроллер должен выполнять один и тот же код каждый раз, когда он получает вход от датчика.? – user5203299

+0

Вам нужна многозадачность? используя множество разных устройств? передача данных по сети? Сохранение измерений в виде файлов? –

+0

В нескольких случаях да, но у меня также могут быть проекты, которые не включают многозадачность. – user5203299

1

Нет, вам не нужна RTOS, только если вам нужны/нужны особенности RTOS. Вы можете запрограммировать микроконтроллер так, как вы/у нас всегда есть, если хотите.

0

Типичные вещи ОСРВ может принести,

  1. управления памятью (владеет памятью)
  2. обработки прерываний поддержка
  3. Планирование (упреждающий или кооперативная)
  4. Обычно несколько водителей в BSP для вашего оборудования/SOC
  5. Инструменты отладки
  6. Какая-то оболочка
  7. файловые системы
  8. IPC (межпроцессного communitation)
  9. Инструмент люкс
  10. Скопление среда
  11. Защита памяти
  12. Networking

Ваше приложение может или не может понадобиться эти функции в зависимости от вашей конечной цели. Некоторые из них могут нанести ущерб работе вашей организации (например, набор инструментов и среда сборки). По мере созревания продукта вам могут потребоваться функции, которые вы не учитывали.

Однако совершенно индивидуальное решение, вероятно, будет иметь меньшую печать. Условия гонки, связанные с обработкой прерываний, могут оказаться довольно трудными. Вероятно, большинство RTOS даст лучшую реализацию, чем что-то обычай, который развивается с течением времени. Если вы очень целеустремлены, конечный автомат с опросом устройств может быть более оптимальным (жесткое реальное время), но снова трудно получить право.

Если RTOS является лицензированным BSD (или другим разрешительным), возможно, повторное использование кода драйвера для вашей собственной инфраструктуры. В какой-то момент ваш код может стать «RTOS». Есть many to choose from.

POSIX соответствие является общим стандартом. Если вы ограничиваете свой код POSIX, вы переноситесь на многие разные ОСРВ/ОС. Однако чаще всего API, который более богат, чем POSIX; это один из способов, которыми они различают друг друга. Возможно, вы сможете использовать более 3 rd партийных библиотек, если RTOS POSIX совместим.

Смежные вопросы