Промышленные контроллеры. Сравнительный анализ протоколов fieldbus применительно к промышленным приборам. Специализированные контроллеры TeleSAFE, объединяющие алгоритмы управления и сбор данных в системе телеметрии, страница 39

Подпрограммы перехвата сигналов

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

Если необходимо, чтобы процесс реагировал особым образом на посылаемые ему сигналы, то в него должна быть включена подпрограмма перехвата сигналов. При посылке сигнала ОС запоминает в состоянии "процесс" соответствую­щее сигналу целое значение и вызывает процедуру обработки сигнала в момент возобновления исполнения процесса. Исполнение данной подпрограммы во многом похоже с исполнением подпрограммы обработки прерываний. После своего завершения она вызывает специальную системную директиву, в результате которой управление возвращается в ту точку процесса, в которой произошла приостановка его выполнения.

Выделение ЮМап (менеджер ввода-вывода)

Унифицированная система ввода-вывода OS-9 имеет пять уровней и использует жестко стандартизованные системные директивы ввода-вывода (такие как Open, Close, Read и Write), тем самым предоставляет стандартный базис для файловых менеджеров и драйверов устройств. Общие для всех системных директив ввода-вывода ресурсы компонуются ОС до того момента, как системная директива будет передана на обработ­ку файловому менеджеру. Вся эта работа выполняется специально выделенным системным модулем менеджера ввода-вывода In-Out Manager (lOMan).

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


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

Система ввода-вывода

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

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

Для повышения гибкости разработки операционные системы, такие как UNIX и OS-9, рассматривают все устройства как файловые объекты и применяют технику, известную как перенаправление В/В, которая позволяет разработчику выполнять В/В без детальной спецификации устройства назначения. Конфигурация устройств в OS-9 может быть изменена в период исполнения с автоматическим добавлением соответствующих драйверов, что существенно упрощает как реконфигурацию системы с новыми или дополнительными устройствами, так и процесс тестирования или отладки.

Файловые менеджеры OS-9

Опираясь на стандартизованную многоуровневую систему В/В, фирма Microware и ее партнеры предоставляют самый широкий набор файловых менеджеров устройств В/В по сравнению с другими ОС РВ. Базовые файловые менеджеры OS-9 предназначены для обеспечения обмена информацией между процессами, а также обеспечивают приложениям OS-9 доступ к различным последовательным устройствам типа принтеров и терминалов, а также к устройствам внешней памяти типа дисков (жестких, гибких, электронных и оптичес­ких) н лент.