Операционные системы контроллеров
В качестве операционных систем контроллеров подавляющее большинство фирм использует открытые многозадачные операционные системы реального времени. Операционные системы реального времени (ОСРВ) контроллеров должны реагировать в заданные временные интервалы на непредсказуемый поток внешних событий. Это определяет особенности операционных систем реального времени и их отличия от обычных многопользовательских операционных систем (ОС):
- ОС ориентирована на распределение ресурсов компьютера между задачами (система разделения времени); а ОСРВ ориентирована на своевременную реакцию системы на поступающие в нее внешние события, которая не должна превышать заданных значений. Отсутствие реакции в заданное время считается ошибкой;
- ОС общего назначения имеет готовый набор приложений и позволяет пользователям решать разнообразные задачи, во многих случаях не прибегая к конкретному программированию; а ОСРВ есть инструмент для создания системы реального времени, нацеленный на программиста, создающего конкретную систему, знакомого с событиями, которые могут поступить в систему и знающего критические сроки обслуживания каждого из этих событий. При этом, даже если два или более событий происходят одновременно, система должна успеть отреагировать на каждое из них в течение временных интервалов, критических для этих событий.
ОСРВ, обладающая подобными особенностями, часто носит название ОС жесткого реального времени, в отличие от ОС мягкого реального времени, для которых задержка реакции допустима, хотя она не желательна и может привести к определенным потерям. В контроллерах, управляющих критичными к авариям производственными процессами, практически почти всегда надо иметь ОС жесткого реального времени.
На рынке имеется большое число специально разработанных для этих целей ОСРВ, к ним относятся следующие ОСРВ: VxWorks, OS9, pSOS, LynxOS, QNX, VRTX.
ОСРВ четко подразделяется на систему разработки и систему исполнения.
Система разработки - набор средств для создания и отладки приложений реального времени (компиляторы, отладчики и т. п.). Она работает обычно под распространенными ОС типа Windows или UNIX. Иногда ОСРВ имеют резидентные средства разработки, реализуемые в среде самой ОСРВ. Часто средства разработки имеют элементы удаленной отладки; эмуляции процессора, на котором будет работать система исполнения; средства моделирования.
Система исполнения - набор средств, обеспечивающих функционирование приложений реального времени (ядро, драйверы, исполняемые модули). Важной характеристикой систем исполнения является занимаемый ими объем памяти в контроллере. Для минимально необходимого для работы системного набора ОСРВ OS9 требуется примерно 22 Кбайта, для ОСРВ VxWorks - примерно 16 Кбайт.
Важные для пользователей свойства ОСРВ перечислены ниже:
- очень малое время реакции системы - время от возникновения запроса на прерывание до выполнения первой инструкции по его обработке. В распространенных ОСРВ это время составляет 4-7 мкс;
- небольшое время переключения контекста - время, которое тратит ОСРВ на передачу управления от одной задачи к другой. В распространенных ОСРВ это время составляет 90-160 мкс;
- возможность исполнения ОСРВ из постоянной памяти (ПЗУ), что позволяет создавать ОСРВ повышенной надежности, без внешних накопителей;
- развитые средства работы с таймерами: задание и измерение разных промежутков времени от 1 мкс и выше; генерация прерываний по истечении заданных временных интервалов; создание разовых и циклических будильников; работа со сторожевыми таймерами (Watch-Dog);
- возможность такого планирования работы ОСРВ, при котором четко выполняется имеющаяся система фиксированных или изменяющихся со временем приоритетов реализации задач; т. е. планирования, позволяющего в заданный момент времени исполнять именно ту задачу, которая необходима.
В некоторых модификациях мощных контроллеров иногда используются ОС общего назначения; Windows NT, QNX, VMS, UNIX, Linux, POSIX. Этому способствуют следующие обстоятельства:
- в реализации некоторых из этих систем стали включаться ядра реального времени,
- использование одних и тех же операционных систем в рабочих станциях операторов (персональных компьютеров) и в контроллерах облегчает их взаимодействие и программирование приложений (а в указанных общих системах есть очень развитый инструментарий создания приложений),
- под общими операционными системами (особенно под Windows NT) имеется множество приложений, в том числе полезных для использования в мощных контроллерах, что позволяет не разрабатывать, а закупать имеющееся на рынке основное прикладное программное обеспечение.
Однако, следует сказать, что к введению ОС общего назначения в контроллеры следует относиться с большой осторожностью: они занимают большую память, достаточно дороги и, главное, не обеспечивают режим жесткого реального времени и по динамике уступают ОСРВ мягкого реального времени.
Дата добавления: 2018-11-26; просмотров: 935;