logo
Шпоры на Автоматизацию123

Операционные системы реального времени

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

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

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

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

Исполнительные ОС РВ, имеющие различные платформы для систем разработки и исполнения обладают хорошей скоростью и реактивностью в отличие ОС РВ, относящихся к классу «ядер реального времени». К последним относятся ОС РВ с монолитным ядром, на базе которых можно построить как компактные системы РВ, так и большие системы серверного класса. Наиболее популярные системы этого класса – OS9, QNX.

ОС Windows 200x самостоятельно не годятся для построения систем жесткого РВ (небольшое количество приоритетов, отсутствие механизмов вытеснения на уровне отложенной обработки прерываний, время выполнения системных вызовов реакции на прерывания сильно зависит от загрузки системы, нет механизмов защиты от зависаний, проблемы с созданием компактных встраиваемых систем и, в целом, - отсутствие предсказуемости). Даже в системах мягкого РВ ОС Windows 200x могут быть использованы только при выполнении целого ряда рекомендаций и ограничений.

В последние годы появились расширения РВ для ОС Windows 200x, которые по сути являются отдельными ОС РВ, исполняющимися параллельно с ОС Windows 200x.

Основной тенденцией развития ОС РВ является сближение систем различных классов.

В настоящее время большинство SCADA-систем реализовано на платформах Windows 200x. Все более очевидным становится применение ОС РВ, в основном, во встраиваемых системах.

Для PC-контроллеров и промышленных компьютеров лучше всего подходит ОС QNX (QSSL). Это связано с тем, что архитектура QNX является открытой, модульной и легко модифицируемой. QNX может загружаться как из ПЗУ, флэш-памяти, так и с помощью загрузки по сети. QNX поддерживает одновременную работу в сетях Ethernet, Arcnet, Serial и Token Ring, обеспечивая асинхронный обмен данными с Windows-приложениями.

Из SCADA-систем, работающих с ОС РВ QNX, наибольшую известность получили: RealFlex, Sitex, RTWin. Эти SCADA-системы работают в графических средах QNX Photon, QNX Windows.

К SCADA-системам, работающим под ОС Windows 200x, относятся Trace Mode (рис. 2), Genesis, Factory Link, InTouch, Genie, Factory Sute, «Скат», Sitect, MasterSCADA, «Каскад».