Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздел 2. Методы программирования контроллеров.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
1.66 Mб
Скачать

2.2. Ос реального времени.

Определение. Система называется системой реального времени (СРВ), если правильность ее функционирования зависит не только от логической корректности вычислений, но и от времени, за которое эти вычисления производятся.

То есть для событий, происходящих в такой системе, то, КОГДА эти события происходят, так же важно, как логическая корректность самих событий.

Чем располагает разработчик промышленной системы? В первую очередь это операционные системы, поддерживающие функционирование разрабатываемого приложения. В сфере промышленной автоматизации свой мир операционных систем - ОС реального времени (ОС РВ). Для VME-процессоров, например, существует 17 ОС (OS-9/OS-9000, VRTX/Spectra, VxWorks, PDOS, pSOS+, LynxOS, VMEexec, iRMX, C-Exec, QNX и т. д.), самая распространенная из которых - OS-9. Поскольку крупные компании-производители обеспечивают для своих процессоров и устройств ввода/вывода полную поддержку сразу нескольких ОС РВ, можно найти версии систем из приведенного списка для многих платформ: 68000, PowerPC, ix86, Pentium.

ОС РВ характеризуется прежде всего малым временем реакции на внешние события. Так, гарантированное время реакции системы на процессоре MC68040/25 МГц под управлением операционной системы OS-9 v3.0/Atomic составляет 3 мкс. Как правило, это многопользовательские многозадачные ОС, выполненные по технологии микроядра. Последние версии ОС имеют прерываемое микроядро, что гарантирует быструю реакцию на внешнее событие при любом состоянии системы.

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

Традиционно ОС РВ делятся на "жесткие" и "мягкие". Система "жесткого" РВ должна без сбоев отвечать на внешние события в рамках заранее определенного интервала времени. Время ответа должно быть предсказуемым и не зависеть от текущего состояния системы. "Мягкая" ОС РВ тоже должна отвечать очень быстро, но гарантированное время ответа в ней не обеспечивается.

Здесь нужно отметить, что временные характеристики последних версий промышленных ОС практически стерли ранее существовавшую грань между двумя этими разновидностями. Сейчас OS-9, ранее считавшаяся "мягкой" ОС, практически не уступает классическим "жестким" ОС - pSOS+ и VxWorks.

На сегодняшний день существует более ста коммерческих ОСРВ. Есть множество бесплатных (или условно бесплатных) СРВ и систем, имеющих статус исследовательских или университетских проектов. К сожалению, в России хорошо представлены только несколько коммерческих систем (QNX, OS-9, VxWorks). QNX на сегодня является самой распространенной ОСРВ в России. К объективным причинам этого можно отнести засилье у нас архитектуры x86 фирмы Intel, к субъективным - наличие нескольких компаний, занимающихся дистрибуцией QNX. Многие популярные в Европе и США ОСРВ до сих пор практически не представлены на российском рынке.

Действительно, кроме базовой поддержки, предоставляемой ОС РВ, для создания ПО разработчику требуется развитый инструментарий, которого, конечно, больше в общецелевых системах. Нельзя сказать, что ОС РВ в этом отношении бедны - в них обычно поддерживаются сетевые протоколы, X Window, Motif, но конкурировать на равных им все же тяжело, особенно с новейшими инструментальными технологиями. С другой стороны, все ОС РВ имеют собственные среды разработки (FasTrack, Microtec, MasterWorks), чьи возможности в определенных аспектах превосходят аналогичные общецелевые средства, которые, например, не могут помочь разработчику систем РВ на финальных стадиях отладки, когда нужно измерять время выполнения программ и время реакции системы. Поэтому можно выбрать подход, при котором ОС общего назначения используются в качестве среды для разработки ПО целевого приложения реального времени, а в качестве среды исполнения применяется та или иная ОС РВ. В этом варианте загрузка и отладка целевого ПО производится с инструментального компьютера по сети.

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