3.2.2.2. Работа.
Главная программа выполняет вызовы функции, отсылающей сообщения о начале работы определённой задачи. Планировщик создаёт отдельные процессы для каждого задания. Запущенные задачи сами могут вызывать функции планирования для себя или других задач.
Таймер получает от планировщика сообщения и создаёт соответствующие метки отсылки сообщений для планировщика. В дальнейшем по достижении метки таймер посылает планировщику сообщение инициировать работу определённой задачи. Если это метка периодической или спорадической задачи, то таймер создаёт через «период» следующую. Планировщик посылает процессам-заданиям сигналы начала кванта времени для выполнения.
При выходе определённой задачи за пределы времени реакции, таймер посылает сообщения о блокировании тех задач, у которых приоритет меньше. Если выход за пределы у двух одинаково приоритетных одновременно, то они продолжат выполняться вместе.
3.2.2.3. Управление задачами.
Во многих системах можно заранее установить множество задач, которые будут использоваться, и предположить их характеристики работы в худшем случае. При этом можно либо провести фиксированное планирование, которое будет удовлетворять требованиям системы, либо определить предварительные приоритеты задач. Однако неизбежно возникает необходимость изменения текущего режима/состояния системы. Можно выделить следующие типы операций по изменению режима:
· Добавление задачи.
Планировщик принимает сообщение об активации задачи, и помещает в число готовых к запуску с учётом абсолютных и относительных ограничений. Добавляется запись в процесс-таймер.
· Изменение интервала выполнения задачи.
Принимается сообщение об изменении интервала. Если задача, для которой он должен быть измен, активна, то она приостанавливается. Интервал изменяется. Затем цикл вычислений продолжается, начиная с этой задачи.
· Изменение периода выполнения периодической задачи.
Планировщик принимает сообщение и посылает к процессу-таймеру сигнал на изменение метки времени, соответствующей данной задаче.
· Изменение времени реакции, времени выполнения или приоритета.
Принимается сообщение о необходимости изменения параметра. Если задача, для которой он должен быть измен, активна, то она приостанавливается. Удаляется соответствующая метка в таймере. Параметр изменяется. Устанавливается новая метка в таймере. Если время реакции равно 0, то блокируются задачи с приоритетом меньшим, чем у данной.
· Удаление задачи.
Задача завершает своё выполнение и посылает планировщику сообщение на удаление её из списка готовых к выполнению. Или планировщик удаляет задачу, вышедшую за пределы выделенного ей времени выполнения.
3.3. Реализация протокола ARINC A.415 на основе разработанного модуля СРВ.
3.3.1. Модель требований к системе.
3.3.1.1. Описательная модель.
Протокола A.415 ARINC, используется во встроенных системах реального времени самолётов ведущих авиаперевозчиков, таких как Airbus, McDonnel Douglas и др. Это протокол опроса бортовых устройств, позволяющий в заранее обозначенный промежуток времени получить от них информацию и сигнализировать о неисправности в оборудовании.
Бортовые системы самолёта через жёстко заданные промежутки времени формируют специальные сообщения, в которых могут сообщать о возникновении внутри них неисправностей и описывать их. Специальные подсистемы самолёта должны получать сообщения бортовых систем и отправлять отчеты о неисправностях на диалоговую систему, предназначенную для взаимодействия с оператором в самолёте. Оператор, в свою очередь, должен иметь возможность акцентировать своё внимание на одной из контролируемых систем и вступить с ней во взаимодействие.
3.3.1.2. Модель случаев использования.
Данная модель представлена на рисунке 11.
У разрабатываемой системы будет 2 вида взаимодействий с «внешним окружением»: в Диалоговом режиме и в Обычном режиме. Диалоговый режим используется при взаимодействии с оператором в самолёте. Обычный режим используется при стандартной работе интерфейсной подсистемы по индикации неисправностей.
3.3.1.3. Функциональная модель.
Функциональная модель системы представлена в виде диаграмм 12 и 13.
В Обычном режиме система реализует следующие функции: начало работы (инициализация), тёплый старт, получение сообщения от бортовой системы, опрос APM (в случае необходимости), отсылка сообщений к CFDIU, переход в диалоговый режим.
В Диалоговом режиме система реализует следующие функции: получение сообщения от бортовой системы, отсылка сообщений к CFDIU, получение команд от CFDIU, переход в Нормальный режим.
3.3.2. Динамическая модель.
3.3.2.1. Модель объектов.
· Сообщение от бортовой системы.
Бортовая система ↔ OMSI И Бортовая система ↔ Энергонезависимая память
· Получить настройки из APM.
APM ↔ OMSI
· Отправить отчет к CFDIU.
OMSI ↔ Шина передачи данных ↔ CFDIU
ИЛИ
General Format Manager
· Запуск диалогового режима.
CFDIU ↔ Шина передачи данных ↔ OMSI
· Начало работы.
Инициализация ИЛИ Тёплый старт
· General Format Manager.
Шина передачи данных ↔ OMSI
· Получить команду.
Шина передачи данных ↔ OMSI
· Инициализация.
OMSI ↔ APM
· Тёплый старт.
Энергонезависимая память ↔ OMSI И APM ↔ OMSI
· Получить команду от CFDIU.
CFDIU ↔ Шина передачи данных ↔ OMSI
· Запуск Обычного режима.
CFDIU ↔ Шина передачи данных ↔ OMSI
... элементов, глобальное пространство имен, а также лавинообразную первоначальную загрузку сети. Таким образом ОСРВ SPOX имеет необходимые механизмы для создания отказоустойчивой распределенной операционной системы реального времени, концепция построения которой описана в главе 2. 4.3 Аппаратно-зависимые компоненты ОСРВ Модули маршрутизации, реконфигурации, голосования реализованы как аппаратно- ...
... запрошенный ею ресурс, произошло связанное с ней внешнее событие, исчерпался заданный интервал времени и т. п. Заканчивая рассмотрение основных принципов планирования задач, необходимо отметить, что тема эта далеко не исчерпана. Диапазон систем реального времени весьма широк, начиная от полностью статических систем, где все задачи и их приоритеты заранее определены, до динамических систем, где ...
... же порты ввода-вывода или линии запроса прерывания. С такими проблемами, как конфликты различных частей аппаратуры, приходится иметь дело в основном именно операционным системам. Наконец, в-восьмых, при разработке операционных систем часто учитывается необходимость совместимости с предыдущей версией операционной системы. Система может иметь множество ограничений на длину слов, имена файлов и т. ...
... заявить, что все его ресурсы доступны для всех пользователей группы. Такая схема может быть многоуровневой (группы делятся на подгруппы и т.д.) с соответственным распределением прав и возможностей. Сейчас появляются операционные системы, в которых права доступа могут определяться не только такой иерархической структурой, но и могут быть более сложными, т. е. права доступа можно добавлять, нарушая ...
0 комментариев