- •1. Описание задачи
- •2. Модель прецедентов
- •2.1. Прецедент «Выбор необходимой температуры»
- •2.2. Прецедент «Поддержание оптимальной частоты воздуха и заданной температуры»
- •2.3. Абстрактные прецеденты
- •2.4. Абстрактный прецедент «Планирование вентиляционной установки при аварии»
- •2.5. Абстрактный прецедент «Забор воздуха с улицы»
- •2.6. Конкретный прецедент «Выбор необходимой
- •2.7. . Конкретный прецедент «Поддержание оптимальной частоты воздуха и заданной температуры»
- •3. Статическая модель предметной области
- •4. Разбиение на объекты
- •5. Динамическая модель
- •5.1. Диаграмма кооперации для прецедента «Выбор необходимой температуры»
- •5.2. Диаграмма кооперации для прецедента «Забор воздуха с улицы»
- •6. Модель состояний
- •7. Консолидация диаграмм кооперации
- •8. Разбиение на подсистемы
- •9. Разбиение системы на задачи
- •9.1. Выделение задач в подсистеме Вентиляции
- •9.2. Выделение задач в подсистеме датчиков
- •9.3. Выделение задач в подсистеме планировщика
- •9.4. Определение интерфейсов задач
- •10. Проект распределенной системы управления вентиляцией
- •10.1. Структура подсистемы вентиляции
- •10.2. Структура подсистемы датчиков
- •10.3. Структура подсистемы планировщика
- •10.4. Интерфейсы подсистем
- •11. Проектирование скрывающих информацию классов
- •11.1. Проектирование классов интерфейса устройств
- •11.2. Проектирование класса, зависящего от состояния
- •12. Разработка детального проекта программы
- •12.1. Проектирование объектов-разъемов для Вентиляции
- •12.2. Проектирование составных задач
- •13. Конфигурирование целевой системы
- •14. Анализ производительности нераспределенной системы управления Вентиляцией
- •14.1. Сценарий для анализа производительности
- •14.2. Последовательности событий
- •14.3. Назначение приоритетов
- •14.4. Планирование в реальном времени для нераспределенной архитектуры
- •14.5. Последовательность событий «Забор воздуха с улицы»
- •14.6. Последовательность событий «Выбор необходимой температуры»
14.6. Последовательность событий «Выбор необходимой температуры»
Задачи, входящие в последовательность событий: Интерфейс Датчиков, Интерфейс ПДУ и Контроллер Вентиляции. Из табл.1 видно, что период этой последовательности Тa составляет 50 мс.
Рассмотрим четыре фактора, вытекающие из обобщенной теории планирования в реальном времени:
– время выполнения задач в последовательности событий. 1 мс для задачи Интерфейс ПДУ, затем 2 мс для задачи Интерфейс Датчиков, затем 5 мс для задачи Контроллер Вентиляции, что в сумме дает Са = 8 мс. Коэффициент использования ЦП за счет выполнения Ua = Са / Та = 8 / 50 = 0,16;
– вытеснение более приоритетными задачами с меньшими периодами не возможно, т.к. данные задачи являются более приоритетными и с меньшими периодами.
– вытеснение более приоритетными задачами с большими периодами. Задачу Контроллер Вентиляции в состоянии вытеснять и Интерфейс Системы отчистки и вентиляции. При этом время на обработку прерывания может занять 4мс. Следовательно, общее время вытеснения Ра =4 мс, а соответствующий коэффициент использования Up=Рa /Тa =4/50 = 0,08;
– время блокировки задачами с более низким приоритетом. Задача Планировщик способна занимать критическую секцию на 15 мс, пока работает с разделяемым объектом, и все это время задача Контроллер Вентиляции будет блокирована. Время блокировки Ва в худшем случае равно 20 мс, а коэффициент использования Ub = Ва / Та = 15 / 50 = 0,30.
Теперь можно определить суммарное затраченное время и полный коэффициент использования ЦП.
Суммарное затраченное время = время выполнения + время вытеснения + + время блокировки в худшем случае = Са + Ра + Ва = 8 + 4 + 15 = 27 мс, что меньше периода, равного 50 мс.
Полный коэффициент использования = коэффициент использования за счет выполнения + коэффициент использования за счет вытеснения + коэффициент использования за счет блокировки = Ue + Up + Ub = 0,16 + 0,08 + 0,30 = 0,54, что меньше верхней границы 0,69.
Согласно обобщенной теореме о верхней границе коэффициента использования и обобщенной теореме о времени завершения, задачи в последовательности событий Выбор необходимой температуры всегда укладываются в срок.
Примечание. На этом рисунке используется расширенная нотация UML.для временных диаграмм.
Рис.31. Система управления Вентиляцией: диаграмма последовательности с временными метками