- Что такое RTOS?
- Почему ОСРВ ??
- Разница между операционной системой реального времени и операционной системой
- Типы ОСРВ
- Преимущества использования бесплатной ОСРВ
- Некоторые основные проблемы, связанные с RTOS
- Как использовать RTOS
Встроенные системы находят широкое применение во всех электронных устройствах вокруг нас, очевидным примером является мини-ноутбук, который мы все время носим с собой, да, я имею в виду наши мобильные телефоны.
Когда бы ни появлялась встроенная система, это всегда комбинация аппаратного обеспечения, такого как микроконтроллеры или микропроцессоры, и программного обеспечения, такого как прошивка или операционная система. Операционная система составляет основу всех электронных устройств и управляет как аппаратным и программным обеспечением в рамках любого электронного устройства. Термин «операционная система» не только ограничивается Unix и Windows для компьютеров, но также может распространяться на микроконтроллеры. Одна такая операционная система, которая может работать на микроконтроллерах, называется операционной системой реального времени. Здесь мы узнаем об ОСРВ и приложениях операционной системы реального времени.
Что такое RTOS?
Операционная система реального времени, широко известная как RTOS, предоставляет контроллеру возможность реагировать на ввод и выполнять задачи в течение определенного периода времени в зависимости от приоритета. На первый взгляд, RTOS может походить на любую другую встроенную программу или прошивку, но она построена на архитектуре операционной системы. Следовательно, как и любая операционная система, ОСРВ может позволять одновременное выполнение нескольких программ с поддержкой мультиплексирования. Как мы знаем, ядро процессора или контроллера может выполнять только одну инструкцию за раз, но в RTOS есть что-то, называемое планировщиком.который решает, какую инструкцию выполнять первой, и, таким образом, выполняет инструкции нескольких программ одну за другой. Технически ОСРВ создает иллюзию одновременного выполнения нескольких операций, выполняя параллельные инструкции по одной.
Это делает RTOS подходящей для различных приложений в реальном мире. В ОСРВ для любого входа всякий раз, когда оценивается логика, которая дает соответствующий выход. Эта логика измеряется на основе не только логического творчества, но и продолжительности времени, в течение которого была выполнена конкретная задача. Если система не может выполнить задачу в течение этого определенного периода времени, это называется системным сбоем.
Почему ОСРВ ??
- Доступность драйверов. В ОСРВ доступно множество драйверов, что позволяет использовать их напрямую для различных приложений.
- Запланированные файлы: RTOS заботится о планировании, поэтому вместо того, чтобы сосредоточиться на планировании любой системы, мы можем просто сосредоточиться на разработке приложения. Например, файлы планирования задач используются для определения определенных действий при выполнении набора условий. RTOS использует определенные расширенные алгоритмы для планирования, как правило, работающих, готовых и заблокированных состояний, которые во время работы RTOS уделяют больше внимания разработке приложения, а не планированию.
- Гибкость добавления функций: в RTOS, даже если вы хотите добавить новые функции, вы можете просто добавить их, не нарушая существующие функции.
Разница между операционной системой реального времени и операционной системой
Существуют различные различия между операционной системой реального времени и такими операционными системами, как Windows, Linux и т. Д. Давайте рассмотрим их одну за другой с помощью табличного формата:
S.No | Операционная система | Система реального времени |
1 | Разделение времени - основа выполнения процессов в операционной системе. | Процессы выполняются в порядке их приоритетности. |
2 | Операционная система действует как интерфейс между аппаратным и программным обеспечением системы. | Система реального времени предназначена для решения реальных проблем. |
3 | Управление памятью не является критической проблемой, когда речь идет о работе операционной системы. | Управление памятью затруднено, поскольку выделяется память в зависимости от проблемы в реальном времени, что само по себе имеет решающее значение |
4 | Приложения: офис, дата-центры, система для дома и т. Д. | Область применения: управление самолетом или ядерным реактором, научно-исследовательским оборудованием. |
5 | Примеры: Microsoft Windows, Linux, OS | Примеры: Vx Works, QNX, Windows CE |
Типы ОСРВ
Мы можем разделить операционную систему реального времени на три части, а именно:
- Операционная система жесткого реального времени
- Операционная система мягкого реального времени
- Фирменная операционная система реального времени
1. Операционная система жесткого реального времени
Давайте начнем разбираться в этом типе операционной системы на примере, живым примером которого является система управления полетом. В системе управления полетом, какие бы задачи ни давал пилот в виде ввода, они должны выполняться вовремя. В операционной системе жесткого реального времени сбои системы допустимы. Особенности жесткой ОСРВ:
- Выполнять задачи вовремя
- Несоблюдение срока фатально
- Гарантированное время отклика в худшем случае
- Может привести к отказу системы
2. Операционная система мягкого реального времени
Самый простой пример использования мягкой ОСРВ - онлайн-база данных, поскольку в мягкой ОСРВ параметр, который нас больше беспокоит, - это скорость. Следовательно, особенностями мягкой ОСРВ являются:
- Задачи нужно выполнять как можно быстрее
- Несвоевременное выполнение задач нежелательно, но не смертельно
- Есть вероятность снижения производительности
- Не может привести к отказу системы
3. Фирменная операционная система реального времени.
Робот-манипулятор, который используется для сбора объектов, можно рассматривать как один из примеров фирмы RTOS. Здесь внутри этой фирмы RTOS, даже если процесс затягивается, терпят.
Преимущества использования бесплатной ОСРВ
Ниже приведены преимущества использования ОСРВ в ваших приложениях.
- Нет проблем с брандмауэром
- Низкая пропускная способность для повышения производительности
- Повышенная безопасность и конфиденциальность
- Низкая стоимость за счет уменьшения количества аппаратных и программных компонентов, используемых для разработки
Некоторые основные проблемы, связанные с RTOS
Теперь, несмотря на то, что RTOS имеет много преимуществ в реальных приложениях, у нее есть и различные недостатки. Некоторые из связанных с этим вопросов обсуждаются здесь.
- Прерывания обычно используются в программах для остановки выполняющейся программы, чтобы перенаправить поток на другую важную часть кода. Здесь, в RTOS, поскольку требуется быстрое время отклика; Рекомендуется отключать прерывания на минимально возможное время.
- Поскольку ядро также должно реагировать на различные события, требуется меньший размер ядра, чтобы оно правильно помещалось в ПЗУ.
- Сложные функции ОСРВ следует удалить, поскольку в ней нет концепции виртуальной памяти как таковой.
Как использовать RTOS
Теперь, когда вы знаете, что такое ОСРВ и где ее можно использовать, для начала работы с ОСРВ вам обычно необходимо использовать среду разработки Tornado или FreeRTOS. Давайте кратко рассмотрим обе эти среды разработки.
Торнадо - VxWorks
Tornado - это интегрированная среда для разработки встроенных приложений RTOS в реальном времени в целевой системе. Торнадо состоит из трех основных элементов, которые перечислены ниже.
1) VxWorks
2) Инструменты для создания приложений (компилятор и связанные программы)
3) Интегрированная среда разработки, которая может управлять, отлаживать и контролировать приложение VxWorks
VxWorks - это сетевая операционная система реального времени. Для начала VxWorks у нас должен быть один комплект разработчика (целевой) вместе с одной рабочей станцией. Здесь комплект разработчика - это не что иное, как целевой хост или компонент, который взаимодействует с целевым сервером на рабочей станции. Цель здесь соединяет инструменты торнадо, такие как оболочка и отладчик. Поэтому, используя VxWorks, мы будем настраивать и строить системы, в то время как Tornado предоставляет нам графический пользовательский интерфейс и инструменты командной строки для настройки и сборки.
Очень важный момент, который здесь проявляется, заключается в том, что при установке tornado в вашей системе каталог установки должен использовать пути как:
installDir / target. Например, если вы хотите сохранить торнадо в C: \ tornado на хосте Windows, полный путь в этом случае должен быть указан как installDir / target / h / vxworks.h.
Здесь мы не будем подробно обсуждать особенности работы Vx (мы оставим это для следующего руководства), но мы обсудим, как разработка может выполняться с использованием C ++ в Vxworks с использованием WindRiver GNU. WindRiver GNU помогает нам в предоставлении графического анализа прерывания, задействованного во время выполнения, а также отчета об использовании памяти.
Например, приведенное выше представление WindRiver объясняет номер связанного процессора вместе с приоритетом задач (tLowPri & tHighPri). Состояние ожидания, то есть зеленая цветная линия, указывает период времени, в течение которого процессор не находится в рабочем состоянии, которое наблюдается каждые несколько секунд. t1, t7, t8 и t9 - не что иное, как различные используемые процессоры. Здесь мы выбираем только процессор t7.
Следовательно, этот Windriver может вызывать подпрограммы как VxWorks, так и прикладных модулей. Вы можете запустить приложение Windriver либо с панели инструментов запуска торнадо (кнопка -> i), затем щелкните меню, а затем щелкните оболочку. Наконец, введите в командной строке «> целевой сервер windsh».
Теперь, чтобы программировать с использованием C ++, важно включить компонент INCLUDE_CPLUS_DEMANGLER, этот компонент деманглера позволяет целевым символам оболочки возвращать удобочитаемые формы имен символов C ++. Перед загрузкой модуля C ++ в цель Vxworks выполните процесс, известный как жевание. Здесь жевание относится к дополнительному этапу обработки хоста.
Скомпилируйте исходную программу приложения C ++ и получите, например, файл hello.cpp. Позже запустите его, чтобы жевать.o и скомпилировать сгенерированный файл ctdt.c. Затем свяжите приложение с ctdt.o, чтобы сгенерировать загружаемый модуль hello.out в VxWorks. Результатом выполнения этого VxWorks будет make-файл, который будет использоваться на какой-то цели.
Бесплатная RTOS
Как правило, всякий раз, когда мы начинаем с RTOS, мы обычно предпочитаем Vx Works RTOS. Но здесь давайте вкратце обсудим бесплатную ОСРВ, которую также могут использовать новички для ознакомления с концепцией операционной системы реального времени. Бесплатная RTOS разработана Ричардом Барри и командой FreeRTOS, она также принадлежит Real time engineering ltd, но ее можно использовать бесплатно, и ее можно просто загрузить, нажав на ссылку ниже.
Скачать бесплатно ROTS
Последней версией бесплатной ОСРВ, используемой на момент написания этой статьи, является версия 10, обозначенная как FreeRTOS V10.
Самым большим преимуществом бесплатной ОСРВ, которое делает ее превосходящей с точки зрения других ОСРВ, является ее независимое от платформы поведение с точки зрения оборудования, то есть код c, который мы будем использовать для выполнения операционной системы, может работать на различных платформах с разной архитектурой. Поэтому независимо от того, используете ли вы микроконтроллер 8051 или какой-либо последний микроконтроллер ARM, код, который вы написали вместе с процессом выполнения, будет одинаковым для обоих.
Есть много других преимуществ использования бесплатной ОСРВ по сравнению с Vx и другими операционными инструментами ОСРВ. Некоторые из них можно сформулировать так:
- Обеспечивает более легкое тестирование
- Продвигает концепцию повторного использования кода
- Меньшее время простоя
- Легкая ремонтопригодность
- Абстрагируйте информацию о времени
Кроме того, базовое ядро, где ядро относится к центральному компоненту операционной системы, который присутствует в бесплатной ОСРВ, делает его доступным для использования в различных приложениях. Поскольку к операционным системам легко подключать расширенные модули, чтобы получить больше бесплатных приложений, ОСРВ становится более мощной.
Один из примеров использования бесплатной RTOS можно пояснить, используя концепцию объединения Free RTOS с Nabto. Nabto - это бесплатное веб-устройство, используемое для передачи информации с устройства в браузер.
Поэтому при объединении Free RTOS с Nabto получается небольшой фрагмент кода C, как показано на рисунке a. Сейчас в тренде Интернет вещей (IOT), и каждое устройство IOT, к которому мы будем получать доступ, имеет уникальный URL-адрес через Интернет, а технология обеспечивает безопасные соединения точка-точка с чрезвычайно низкой пропускной способностью. При отсутствии подключения к Интернету эта комбинация может быть полезной. Таким образом, бесплатная ОСРВ является популярным выбором при внедрении Интернета вещей.