Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1. с 1- 7 исправленная (Восстановлен).docx
Скачиваний:
24
Добавлен:
18.03.2015
Размер:
4.88 Mб
Скачать

14.2. Последовательности событий

Рассмотрим сначала соответствующие прецедентам последовательности событий в нераспределенной системе (рис.30).

Последовательность событий «Выбор необходимой температуры» (период = Та):

Е1: Пользователь задает необходимую температуру по объекту Интерфейс Пульта ДУ.

Е2: Интерфейс Пульта ДУ посылает Запрос на заданную температуру объекту Вентиляция.

Е3: Вентиляция посылает Запрос текущей температуры и загрязненности воздуха сущности СостояниеИПланирование Вентиляции.

Е4: Интерфейс Датчиков обновляет информацию в сущности СостояниеИПланирование Вентиляции.

Е5: Вентиляция посылает Код Состояния управляющему объекту Управление Вентиляцией.

Е6: Управляющий объект Управление Вентиляцией вырабатывает посылает Подтверждение объекту Ин­терфейс Системы охлаждения или Интерфейс Системы Обогрева.

Последовательность событий «Забор воздуха с улицы» (период = Та):

F1: Вентиляция получает информацию о состоянии системы от сущности СостояниеИПланирование Вентиляции.

F2: Объект Интерфейс Датчиков обновляет данные сущности СостояниеИПланирование Вентиляции.

F3: Вентиляция выбирает необходима очистка воздуха или нет и отсылает управляющий объекту Управление Вентиляцией сигнал-состояние.

F4: Управляющий объект Управление Вентиляцией отправляет сообщение объекту Интерфейс Системы Отчистки команду на забор воздуха с улицы.

Рис.30. Последовательность событий в нераспределенной системе управления Вентиляцией

14.3. Назначение приоритетов

Параметры задач в нераспределенной системе управления Вентиляцией приведе­ны в табл.1. Время ЦП для каждой задачи включает затраты на контекстное переключение (не более двух переключений на задачу). Затраты на обработку со­общений поровну разделены между задачей-отправителем и задачей-получателем. Периоды всех задач, участвующих в данной последовательности обработки собы­тий, одинаковы: они определяются поступлением внешнего события, послужив­шего началом последовательности. Задача Диспетчер Вентиляции рассматривается так, словно представляет собой две разные задачи, поскольку встречается в двух разных последовательностях. В первом случае ее период равен 100 мс (частота активизации Интерфейса Пульта ДУ), а во втором – 200 мс (частота активи­зации Интерфейса Системы отчистки и вентиляции).

Заметим также, что периоды трех асинхронных задач интерфейса устройств (все они управляются прерываниями) кратны друг другу, то есть эти задачи могут быть готовы к активизации практически одновременно. Поскольку прерывания нужно обрабатывать максимально быстро, данным задачам следует назначить наивысшие приоритеты. Но тогда будет нарушено правило частотной монотонности: например, задача Интерфейс Системы отчистки и вентиляции, имея более длинный период, чем Контроллер Вентиляции, получит тем не менее более высокий приоритет.

Задачи, управляемые прерываниями, исполняются с более высоким приоритетом, чем остальные задачи в данной последовательности. Из-за этого всю сово­купность задач нельзя привести к одной эквивалентной задаче с тем же периодом, но потребляющей большее время ЦП. Придется проектировать их как разные задачи с оди­наковым периодом.

Рассмотрим, какие приоритеты должен назначить задачам проектировщик (см. табл.1). Если не считать трех задач, управляемых прерываниями, то остальным задачам присваиваются естественные частотно-монотонные приоритеты. Задаче Интерфейс Датчиков определяется наивысший приоритет, что, кстати, согласуется с алгоритмом частотной монотонности. Но уже задачам Интерфейс Пульта ДУ и Интерфейс Системы отчистки и вентиляции назначаются второй и третий по порядку приоритеты, что противоречит этому алгоритму. Следующий приоритет, согласно алгоритму частотной монотонности, получает задача Кон­троллер Вентиляции, у которой самый короткий период.

Таблица 1. Параметры задач для планирования в реальном времени на примере системы управления Вентиляцией

Задача Время ЦП Период Коэффициент Назначенный С{ Т,

приоритет использования

U

Последовательность событий «Выбор необходимой температуры»

Интерфейс ПДУ

Интерфейс Датчиков

0.1 50

1 50

0,002

0.02

2

1

Контроллер Вентиляции

5 50

0,10

4

Полное затраченное время = 61 мс

Полный коэффициент использования = 0,122

Последовательность событий

“Забор воздуха с улицы”

Интерфейс Системы отчистки и вентиляции

3 100

0,03

3

Диспетчер Вентиляции

6 100

0,06

5

Полное затраченное время = 90 мс

Полный коэффициент использования = 0,09

Прочие задачи

Планировщик

20 200

0,10

6

Полное затраченное Полный коэффициент

время = 200 мс использования = 0,10