Повышенная зависимость от технологий для выполнения важнейших задач привела к разработке высокопроизводительных и детерминированных операционных систем, в том числе операционных систем реального времени (RTOS).
Операционная система - это программное обеспечение, которое облегчает аппаратному обеспечению прием и выполнение пользовательских команд.
Операционные системы необходимы для планирования задач, управления памятью и файлами, а также для доступа к аппаратным ресурсам.
Операционная система реального времени (RTOS) - это операционная система, которая работает в режиме реального времени с детерминированными ограничениями, требующими эффективного использования времени и мощности для обработки входящих данных и передачи ожидаемых результатов без каких-либо неизвестных или неожиданных задержек. Программное обеспечение RTOS зависит от времени, что означает, что оно должно обрабатывать входные данные и предлагать выходные данные в течение короткого заданного детерминированного периода. Однако ключом к RTOS и наиболее важным требованием к программному обеспечению RTOS является гарантированное выполнение запроса и ответа на данные. Если в ОС Windows запросы и ответы выполняются быстро 90% времени, а оставшиеся 10% времени запрос ввода / вывода занимает слишком много времени, то приложение реального времени работает некорректно. Таким образом, RTOS должна быть не только быстрой, но и, что более важно, надежной
Компоненты ОСРВ
Операционная система реального времени включает в себя несколько компонентов:
Планировщик: это основной элемент RTOS, который определяет порядок выполнения задач или потоков, обычно основанный на схеме приоритетов, и либо в режиме выполнения до завершения, либо циклическим способом. Некоторые RTOS могут пытаться сбалансировать поток загрузки между процессорами, но большинство требуют, чтобы разработчики назначали привязку процесса к ядрам для оптимизации использования ресурсов приложений в реальном времени.
(SMP): симметричная многопроцессорная обработка ОСРВ обладает способностью обрабатывать и разделять несколько задач или потоков, чтобы их можно было запускать на нескольких ядрах для обеспечения параллельной обработки кода (т.Е. многозадачности).
Библиотека функций: это стандартный интерфейс, который может содержать интерфейс прикладной программы (API) для вызова подпрограмм внутри него, это интерфейс, который соединяет этот код приложения и ядро. Объекты кода приложения направляют запросы к ядру через библиотеку функций, чтобы побудить приложение предоставить желаемое программное поведение.
Задержка быстрой отправки / время переключения контекста: задержка отправки представляет время с момента, когда операционная система определяет, что задача завершена, до запуска готового к запуску потока или когда срабатывает событие, которое заставляет задачи с более высоким приоритетом вытеснять текущую задачу. Переключение контекста - это время, необходимое для запланированного переключения с одного запущенного потока на другой поток, для этого необходимо сохранить контекст текущей задачи и заменить его контекстом нового запущенного потока.В RTOS время переключения должно оставаться детерминированным и минимальным.
Определяемые пользователем объекты и классы данных: RTOS полагается на языки программирования со структурами данных, которые организованы в зависимости от типа их работы. Пользователь определяет наборы объектов с помощью указанного языка программирования, такого как C++, который RTOS будет использовать для управления указанным приложением.
Управление памятью: управление памятью требуется для выделения памяти для каждой запускаемой программы или объекта, на который будут ссылаться ссылки в памяти. В ОСРВ это важно, поскольку, в отличие от ОС общего назначения, таких как Windows, она не может позволить себе загружать или выгружать память, поскольку это приводит к неопределенному поведению.
Типы операционных систем реального времени
Операционные системы реального времени подразделяются на три типа:
Мягкие системы реального времени
Соблюдение сроков выполнения команд в мягких операционных системах реального времени не является обязательным для каждой задачи. Однако системы всегда должны давать ожидаемые результаты. Мягкая RTOS требует, чтобы ответ был логически правильным и выполнялся до определенного срока, иначе результат становится все более неточным. По сути, результат все еще может иметь некоторое значение, даже если он произошел после требуемого срока.
Жесткие системы реального времени
Жесткая система реального времени - это ограниченная по времени и детерминированная система, которая реагирует в течение определенного периода времени. Они продиктованы крайними сроками, задержками и временными ограничениями. Например, если результат ожидается в течение 10 секунд, система должна обработать ввод и выдать результат к 10-й секунде. Обратите внимание, что вывод не должен быть выпущен на 9-й или 11-й секунде, чтобы предотвратить сбой системы.
Приложения операционных систем реального времени
RTOS может быть гибкой, но обычно предназначена для определенных целей. Большинству подсистем RTOS назначаются определенные задачи, и они оставляют все остальное, не предназначенное для этого, для обработки самой ОС Windows. RTOS предлагает в основном операционные решения, включая такие приложения, как:
Системы управления: RTOS используется для мониторинга и выполнения команд системы управления. Системы реального времени используются для управления исполнительными механизмами и датчиками для таких функций, как цифровые контроллеры. Управляемые системы включают самолет, тормоза и двигатели. Контролируемые системы контролируются с помощью датчиков и изменяются исполнительными механизмами. RTOS считывает данные с датчиков, а затем выполняет вычисления и перемещает исполнительные механизмы, чтобы можно было имитировать движение в полете.
Обработка изображений: Компьютеры, мобильные устройства и камеры должны выполнять свои функции в режиме реального времени, что означает, что визуальный ввод необходим в режиме реального времени с максимальной точностью, чтобы, например, промышленная автоматизация могла контролировать, что происходит на конвейерах или сборочной линии, когда изделие движется по своему пути и обнаружен дефект или элемент переместил свое местоположение. Обработка изображений в режиме реального времени необходима для внесения корректировок в режиме реального времени для движущихся объектов.
Передача голоса по IP (VoIP): VoIP использует интернет-протоколы для передачи голоса в режиме реального времени. Таким образом, VoIP может быть реализован в любой IP-сети, такой как интрасети, локальные сети и Интернет. Голос оцифровывается, сжимается и преобразуется в IP-пакеты в режиме реального времени перед передачей по IP-сети.
Рекомендации по выбору RTOS
Производительность
Производительность является ключевым фактором, который необходимо учитывать при выборе RTOS. Операционные системы реального времени отличаются и работают по-разному. Ключевым аспектом RTOS является то, что его детерминированность гарантирует, что запросы и ответы на данные выполняются в течение заданного периода времени, независимо от того, что еще происходит в системе ПК. При определении наилучшего RTOS задайте такие вопросы, как, показывает ли система какое-либо дрожание в пределах вашего допустимого диапазона и, таким образом, обеспечивает необходимый вам детерминизм. Производительность RTOS должна определяться надежностью системы при выполнении вызовов в течение указанного периода, независимо от того, что еще происходит в системе.
Уникальные особенности
Каждая операционная система реального времени обладает уникальными функциями, которые определяют, как она работает для выполнения команд. Таким образом, вы должны оценить функции, необходимые для эффективной работы вашей системы, и выбрать RTOS с соответствующими функциями. Хорошая RTOS должна быть масштабируемой и иметь эффективные системы защиты памяти.
Ваша ИТ-команда
Большинство людей упускают из виду свою ИТ-команду при выборе идеальной ОСРВ. Хорошая ОСРВ должна пойти на пользу вашей ИТ-команде, снизив ее трудоемкость, чтобы у них было больше времени сосредоточиться на отличительных особенностях продукта и научиться настраивать и интегрировать операционную систему реального времени. Итак, выберите ОСРВ, с которым ваша ИТ-команда знакома и с которым она может работать.
Промежуточное программное обеспечение
Почти все операционные системы реального времени содержат компоненты промежуточного программного обеспечения или компоненты сторонних производителей, которые интегрированы с RTOS. Вы должны оценить промежуточное программное обеспечение, чтобы убедиться, что оно имеет бесшовный метод интеграции. Если в вашей RTOS отсутствует поддержка промежуточного программного обеспечения, вам, возможно, придется иметь дело с трудоемкими процессами интеграции. Убедитесь, что ваше промежуточное программное обеспечение содержит такие компоненты, как TCP / IP и файловые системы.
Операционная система реального времени должна быть высокого качества и проста в навигации. Разработка встроенных проектов является сложной и отнимает много времени; разработчикам не нужно бороться с системными проблемами, связанными с системой реального времени, которые могут отвлекать. RTOS должен быть надежным компонентом, на который может рассчитывать любой разработчик.
Хорошими примерами операционных систем реального времени являются решения RTX (32-разрядные) и RTX64 (64-разрядные), которые позволяют вам и вашей команде сосредоточиться на повышении эффективности ваших приложений. Это программное обеспечение предназначено для использования в качестве жесткой системы реального времени, которая обеспечивает вывод в течение определенного периода времени для улучшения качества встроенных систем.