Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС.doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
351.23 Кб
Скачать
  1. Требования к ос реального времени

Требования определяются прагматикой систем управления, составом и структурой управляющей аппаратуры и управляющего вычислительного комплекса (ВК). Технические требования к взаимодействию программного обеспечения (ПО) с аппаратурой могут быть сформулированы так:

  • обеспечение надежной и быстрой обработки прерываний от таймера или другого устройства, которое задает цикл работы исполнительной аппаратуры системы управления;

  • обеспечение достаточного времени на выполнение проблемных задач системы управления, которые определяют циклы управления и проблемные вычисления.

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

Будем различать общие требования к ОС реального времени (РВ) и требования для специализированных ОС РВ. К общим организационным требованиям относятся:

  • управление процессом вычислений в соответствии с приоритетами задач;

  • согласование взаимодействия программ обмена и организации ВП в многопроцессорной структуре системы РВ;

  • обобщение средств обработки прерываний и их организация взаимодействия с другими ВП;

  • взаимодействие с сетевыми средствами для синхронизации ВП, получения справочной информации и решения задач планирования вычислений;

  • обслуживание аппаратно-программных средств повышения надежности системы, исключения аварийных ситуаций и некорректного управления;

  • соблюдения ограничений по времени для задач с жестким ограничением времени;

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

ОС РВ должна обеспечивать следующие специальные режимы использования ПО:

  • динамическое пособытийное управление в РВ с жесткими временными ограничениями для промышленных технологических задач;

  • связь с отдаленными рабочими станциями информационных сетей и ЭВМ других уровней;

  • режим технологической подготовки исполняемых программ;

  • режим настройки и контроля программ обработки для объекта управления на обработку следующего запроса с помощью меню-ориентированного и графического интерфейса.

Особые требования к ОС РВ управляющих систем:

  • оперативное взаимодействие (обмен) с блоком управления на базе обратной связи по результатам управления;

  • поддержка стратегии управления с минимально возможным простоем основного оборудования системы управления;

  • реконфигурацию структуры и перераспределение задач между процессорами.

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

  1. Обобщенная структура специализированной ос реального времени

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

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

Требования ограниченного времени обработки прерываний в условиях регулярной интенсивности потока прерываний для каждой группы устройств приводит к необходимости сохранения всех оперативных программ вместе с ядром ОС в главной памяти ВК. Задачи ОС могут быть разделены на специализированные задачи или ВП ОС и проблемные задачи. Целью специализированных задач является буферизация данных, сформированных для низкоприоритетных задач, которые нуждаются в переключении режимов работы.

Специализированная ОС управления проектируется для работы в следующих базовых режимах:

  • инициализации или начальной загрузки;

  • подготовки к оперативной работе;

  • оперативной работы по управлению целевой системой;

  • взаимодействия с другими компьютерами сети, обеспечивающими технологическую подготовку и информирование о состоянии управляемого технологического процесса.

Специализированная ОС должна решать следующие специальные инициирующие задачи:

  • начальное размещение управляющих данных в памяти;

  • задачу тестирования состояния ВК и устройств системы управления;

  • задачу реинициализации ОС при обнаружении особых ситуаций;

  • задачу контроля целостности ОС и резидентных проблемных программ.

В режиме оперативной работы должны решаться следующие специальные задачи:

  • выдача управляющих сигналов на контроллеры чувствительных элементов и исполнительных устройств;

  • прием запросов на обслуживание отдаленных пользователей.

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

Внутренние управляющие структуры ядра определяют использование ресурсов системы управления в разных режимах, задачах и ВП. Наиболее распространено планирование работы внешних устройств в режиме тестов и в режиме нормального обмена, а также задача разделения ресурса памяти или внешнего устройства между ВП, которым мы уже уделили внимание.

При фиксированной структуре и закреплении ресурсов за отдельными задачами и ВП в малых ОС нет необходимости в создании таблиц распределения ресурсов. Более того, для сокращения временных затрат в малых ОС при достаточном объеме главной памяти для сохранения кодов и данных оперативных задач удобно отказаться от динамического создания различных объектов ОС. При этом используется только статическое создание объектов на этапе генерации конкретной конфигурации ОС.

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

  • ВП или задачи, постоянно включенные в ОС к моменту их эксплуатации, включая задачи пользователя фонового режима;

  • очереди разных информационно-управляющих объектов, сохраняемые в разных областях памяти;

  • флаги готовности и управления ВП.

Кроме того, в состав ОС могут быть включены такие объекты пользователя как:

  • сообщения для обмена данными между ВП;

  • семафоры для синхронизации ВП за событиями;

  • сегменты для размещения относительно больших блоков информации.

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

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

Для эффективной реализации супервизора задач целесообразно использовать команды обработки строк в форме машинного слова. Эффективность воплощения программы в некоторой степени обеспечивается размещением элементов таблицы в памяти по границам машинных слов и двойных слов, из-за чего наиболее эффективной является структура элемента с четным или кратным четырем количеством байтов. Для small-модели системы программирования с единственным стековым сегментом, который выделен для сохранения стеков всех задач, представление стекового адреса требует двух байтов. Для представления приоритетного числа достаточно одного байта, а байт, дополняющий структуру до четного можно использовать для хранения флагов событий ВП, что облегчает конъюнктивный анализ группы из восьми событий. Готовой считается задача, в которой в единицу установлены все флаги событий. Управление программе выбора задачи передается после выполнения системной функции, которая существенно меняет состояние задачи, то есть переводит ее в состояние готовности. Основной функцией супервизора является сохранение информации прерванного ВП и последующем выборе для выполнения в системе наиболее приоритетного ВП. Для разрешения конфликтов при выборе из ряда равноприоритетных готовых задач можно применять правило: при равных приоритетах предпочтение получает задача, занесенная в таблицу первой.

Для обращения к планировщику задач необходимо генерировать специальные последовательности команд на уровне обращений к ядру ОС в форме макроопределений. Такой подход позволяет на основе этого ядра строить библиотеку системных обращений для организации взаимодействия с ядром ОС, а значит и любую унифицированную ОС, построенную на объектном (типа irmx/86), процедурном или функциональном уровне.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]