Определение

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

Операционные системы реального времени сейчас используются практически повсюду. Они так же распространены, как и их «коллеги» — Windows, Mac OS и Unix, которые управляют программными приложениями и системными компонентами, работающими на стандартных ПК. Операционные системы реального времени применяются для управления компьютерными приложениями и компонентами в сетевых маршрутизаторах и коммутаторах, в автомобилях, в пейджерах и мобильных телефонах, в медицинских приборах, промышленном измерительном и контрольном оборудовании, а также во множестве других прикладных областей.

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

Жестокая реальность

Различают два типа ОС реального времени: один из них характеризуют «жестким реальным временем», второй — «мягким». Если не выполняется обработка критических ситуаций либо она происходит недостаточно быстро, система жесткого реального времени прерывает операцию и блокирует ее, чтобы не пострадала надежность и готовность остальной части системы. Системы мягкого реального времени более «снисходительны» и «терпят» определенные, некритичные ошибки.

По мере того как операционные системы реального времени и встроенные компьютеры все чаще используются в критически важных приложениях, разработчики коммерческих систем создают новые ОС реального времени высокой готовности. Эти продукты включают в себя специальные программные компоненты, которые инициируют предупреждения, запускают системную диагностику для того, чтобы помочь выявить проблему, или автоматически переключаются на резервную систему. Современные RTOS высокой готовности поддерживают шину CompactPCI, разработанную группой PCI Industrial Computer Manufacturers Group для аппаратного обеспечения горячей замены.

Выпускается довольно много операционных систем реального времени. К числу наиболее популярных продуктов относятся VxWorks и VxWorks AE, разработанные компанией Wind River Systems. Последняя представляет собой архитектуру высокой готовности с распределенной передачей сообщений и поддержкой отказоустойчивости. ОС позволяет программистам изолировать совместно используемые библиотеки, данные и системное программное обеспечение, а также приложения.

LynxOS — жесткая ОС реального времени, которая работает с Unix и Java. Операционная система QNX функционирует на процессорах архитектуры Intel и имеет микроядро размером всего 10 Кбайт.

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

В течение многих лет приложения на базе ОС реального времени использовались во встроенных системах специального назначения, а с недавнего времени они стали применяться повсюду, от управляемого компьютером медицинского оборудования до кофеварок. Новые приложения распределенных вычислений стимулируют создателей операционных систем заниматься исследованиями и разработкой стандартов. Правительственные инициативы, в частности трехлетняя программа комитета Quorum, входящего в американское агентство оборонных исследовательских инициатив Defense Advanced Research Project Agency, также посвящены управлению ресурсами в реальном времени, сетевым вопросам, управлению данными и технологиям промежуточного программного обеспечения.

«Комитет занимается вопросами адаптивного планирования, которые позволят распределенным системам взаимодействовать друг с другом и корректным образом совместно использовать ресурсы», — заметил Майк Каглиарди, старший технический специалист Института разработки программного обеспечения Университета Карнеги-Меллона.

«Цель в том, чтобы расширить диапазон возможностей, предоставляемых операционными системами реального времени», — подчеркнул Каглиарди. Он сказал, что военные проявляют большой интерес к распределенным приложениям реального времени.

Усилия Quorum направлены на создание технической оболочки для распределенных вычислений реального времени, применяемых как для военных, так и для коммерческих целей. Эта оболочка будет поддерживать стандартные интерфейсы и интероперабельные компоненты.

«Мы рассчитываем найти платформу, которая способна содержать все жесткие и мягкие приложения внутри единой архитектуры», — сказал Каглиарди.

В идеале платформа будет создана на основе открытого стандарта, хотя, как отметил Каглиарди, на это не приходится особо надеяться.

«Фактически правила игры определяют стандарты, подготовленные коммерческим рынком», — подчеркнул он.

Вне зависимости от того, кто создает универсальную распределенную вычислительную платформу реального времени, операционные системы по-прежнему останутся очень важной технологией, о которой конечные пользователи даже не подозревают.