86072

Анализ производительности нераспределенной системы регистрации метеонаблюдений

Лекция

Другое

Последовательность событий Включение выключение системы период = Тс: А1:Интерфейс Кнопок получает и обрабатывает прерывание. А2:Интерфейс Кнопок посылает Запрос Кнопки на обслуживание Диспетчеру. 3:Диспетчер передает запрос Интерфейсу Датчиков. 4:Диспетчер передает запрос Интерфейсу Центрального блока.

Русский

2015-04-02

519.5 KB

2 чел.

14. Анализ производительности нераспределенной системы регистрации метеонаблюдений

В этом разделе применим теорию планирования в реальном времени к анализу производительности нераспределенного варианта системы регистрации метеонаблюдений.

14.1. Сценарий для анализа производительности

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

– прерывания от кнопок «Включить» или «Выключить» поступают с максимальной частотой 1 раз в 10 минут, то есть время между событиями составляет 600 с;

– измерения от датчиков после обработки в центральном блоке передаются на компьютеры операторов каждые 5 минут, то есть время между событиями составляет 300 с. Это самая критическая сторона проблемы, так как при получении параметров состояния окружающей среды Контроллер Системы должен отдать команду вывода на монитор и определить, следует ли изменить цвет зажигания сигнальных лампочек, если характер метеоусловий изменился. Поскольку датчики метеокомплекса фиксируют в общем 5 измерений, которые должны быть отображены на экранах мониторов трех операторов, то в нашем худшем случае эти данные будут отображены за 7,5 с (по 0,5 с для каждого измерения). Здесь же нужно учесть и время, затрачиваемое на обновление цвета зажигания пяти сигнальных лампочек в соответствии с регистрируемыми метеоусловиями. Таким образом, понадобится еще 1,5 с (по 0,5 с для каждого рабочего места оператора), и общее время, требующееся для регистрации метеонаблюдений, для худшего случая будет равно  9 с.;

– прерывания от кнопки «Вызвать техническую службу» поступают с максимальной частотой 1 раз в 75 с, то есть время между событиями составляет 75 с. Это соответствует худшей частоте возникновения неполадок в работе системы.

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

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

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

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

А1:Интерфейс Кнопок получает и обрабатывает прерывание.

А2:Интерфейс Кнопок посылает Запрос Кнопки на обслуживание Диспетчеру.

A3:Диспетчер передает запрос Интерфейсу Датчиков.

A4:Диспетчер передает запрос Интерфейсу Центрального блока.

A5:Диспетчер обновляет состояние объекта  Состояние системы и метеоусловий.

Последовательность событий «Регистрация метеонаблюдений» (период = Тb):

Е1:Происходит событие (срабатывание) таймера Тактовый Генератор.

Е2:Интерфейс Датчиков получает значения измеренных параметров состояния окружающей среды.

Е3:Интерфейс Датчиков передает измеренные параметры Интерфейсу Центрального блока для обработки.

Е4:Интерфейс Центрального блока передает обработанные параметры Контроллеру Системы и объекту Состояние системы и метеоусловий.

Е5:Контроллер Системы получает сообщение о состоянии системы и характере метеоусловий от объекта Состояние системы и метеоусловий.

Е6:Контроллер Системы вызывает операцию Отобразить регистрируемые метеонаблюдения для вывода метеоданных на монитор.

Е7:Контроллер Системы отдает команду Зажечь Сигнальные лампочки, чтобы включить свет (зеленый или красный) сигнальных лампочек, соответствующий характеру регистрируемых метеоусловий.

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

F1:Объект Состояние системы и метеоусловий отмечает состояние неисправности системы и делает соответствующее сообщение Контроллеру Системы.

F2:Контроллер Системы отправляет команду Отобразить сообщение  о неисправности для вывода соответствующей информации на монитор.

F3: Интерфейс Кнопок получает и обрабатывает прерывание.

F4:Интерфейс Кнопок посылает Запрос Кнопки на обслуживание Диспетчеру.

F5:Диспетчер запрашивает Интерфейс Датчика вызова технической службы на вызов технической службы.

F6:Интерфейс Датчика вызова технической службы передает сообщение Техническая служба вызвана Диспетчеру.

F7:Диспетчер просит объект Состояние системы и метеоусловий отметить факт устранения неполадки.

F8:Объект Состояние системы и метеоусловий сообщает Неполадка устранена Контроллеру Системы.

F9:Контроллер Системы отправляет команду Отобразить сообщение  об устранении неполадки для вывода сообщения об устранении неполадки на монитор.

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

Рис.37. Последовательность событий в нераспределенной системе регистрации метеонаблюдений

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

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

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

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

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

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

Задача

Время ЦП Сi, с

Период Тi, с

Коэффициент использования Ui

Назначенный приоритет

Последовательность событий «Устранение неполадок»

Интерфейс Кнопок (случай а)

Интерфейс Датчика вызова технической службы

Контроллер Системы

(случай с)

Диспетчер

(случай e)

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

1

3

5

6

75

75

75

75

0,013

0,04

0,07

0,1

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

1

3

4

5

Последовательность событий «Регистрация метеонаблюдений»

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

(случай 1)

Интерфейс Центрального блока

(случай 1)

Контроллер Системы

(случай d)

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

10

12

5

    

300

300

300

0,03

0,04

0,02

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

6

7

4

Последовательность событий «Включение/выключение системы»

Интерфейс Кнопок

(случай б)

Диспетчер

(случай f)

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

(случай 2)

Интерфейс Центрального блока

(случай 2)

Полное затраченное время = 203 c

1

6

10

12

600

600

600

600

0,003

0,01

0,017

0,02

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

2

5

6

7

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

Таймер работы системы

5

1 мес

0

8

Генератор отчетов

15

1 мес

0

9

14.4. Планирование в реальном времени для нераспределенной архитектуры

Сложение коэффициентов использования ЦП для всех задач в табл.1 дает полный коэффициент 0,4, то есть намного меньше значения 0,69, полученного из теоремы о верхней границе. Но, поскольку присвоение приоритетов произведено с нарушением принципа частотной монотонности, необходим более детальный разбор.

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

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

Ниже приводится анализ планирования в реальном времени для каждой последовательности событий. Его результаты представлены на временной диаграмме (рис.38): предполагается худший случай, когда все внешние прерывания возникают одновременно. На рисунке изображены только задачи и обмен сообщениями между ними. Доступ к пассивным объектам не показан, так как он происходит в контексте потока управления задачи.

14.5. Последовательность событий «Устранение неполадок»

Задачи, входящие в последовательность событий: Интерфейс Кнопок, Интерфейс Датчика вызова технической службы, Контроллер Системы, Диспетчер. Из табл.1 видно, что период этой последовательности Та составляет 75 с.

Рассмотрим четыре фактора, вытекающие из обобщенной теории планирования в реальном времени:

– время выполнения задач в последовательности событий. 1 с для задачи Интерфейс Кнопок, 3 с для задачи Интерфейс Датчика вызова технической службы, 5 с для задачи  Контроллер Системы, 6 с для задачи Диспетчер, что в сумме дает Са = 15 с. Коэффициент использования ЦП за счет выполнения Ua = Са / Та = 15 / 75 = 0,2;

– время вытеснения более приоритетными задачами с меньшими периодами. Поскольку эта последовательность имеет наименьший период, таких задач нет;

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

Upaa =1/75 = 0,013;

– время блокировки задачами с более низким приоритетом. Таких задач нет.

Теперь можно определить суммарное затраченное время и полный коэффициент использования ЦП.

Суммарное  затраченное  время = время выполнения + время вытеснения + время блокировки в худшем случае = Са + Ра + Ва = 15 + 1 + 0 = 16 с, что меньше периода, равного 75 с.

Полный коэффициент использования = коэффициент использования за счет выполнения + коэффициент использования за счет вытеснения + коэффициент использования за счет блокировки = Ue + Up + Ub = 0,2 + 0,013 + 0 = 0,33, что меньше верхней границы 0,69.

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

14.6. Последовательность событий «Регистрация метеонаблюдений»

Задачи, входящие в последовательность событий: Интерфейс Датчиков, Интерфейс Центрального блока, Контроллер Системы. Из табл.1 видно, что период этой последовательности Тb равен 300 с.

Рассмотрим те же четыре фактора, что и выше:

– время выполнения задач в последовательности событий. 10 с для задачи Интерфейс Датчиков, затем 12 с для задачи Интерфейс Центрального блока и 5 с для задачи Контроллер Системы, что в сумме дает Сb = 27 с. Коэффициент использования ЦП за счет выполнения

Ub = Сb / Тb = 0,09;

– время вытеснения более приоритетными задачами с меньшими периодами. В течение 300 мс четыре раза могут выполниться задачи Интерфейс Кнопок, Интерфейс Датчика вызова технической службы, Контроллер Системы (случай с), Диспетчер (случай е), что приведет к вытеснению на 60 с;

– вытеснение более приоритетными задачами с большими периодами. 1 с способна занять задача Интерфейс Кнопок (случай б) на обработку прерывания (она вытесняет задачу Интерфейс Датчиков). Следовательно, общее время вытеснения более приоритетными задачами Сp =60 + 1 = 61 с, а соответствующий коэффициент использования Up = Сp / Тp = 61 / 300 = 0,2;

– время блокировки задачами с более низким приоритетом. Задача Диспетчер (случай f) может занимать критическую секцию на 6 с, блокируя задачу Интерфейс Датчиков. Время блокировки Вb в худшем случае равно 6 с, а коэффициент использования Ub = Вb / Тb = 6 / 300 = 0,02.

Таким образом, получаем:

Суммарное  затраченное  время = время выполнения + время вытеснения  + время блокировки в худшем случае = 27 + 61 + 6 = 94 с, что меньше периода, равного 300 с.

Полный коэффициент использования = коэффициент использования за счет выполнения + коэффициент использования за счет вытеснения + коэффициент использования за счет блокировки = Up + Ue + Ub = 0,09 + 0,2 + 0,02 = 0,31, что меньше верхней границы 0,69.

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

14.7. Последовательность событий «Включение/выключение системы»

Задачи, входящие в последовательность событий: Интерфейс Кнопок, Диспетчер, Интерфейс Датчиков, Интерфейс Центрального блока. Из табл.1 видно, что период этой последовательности Тс равен 600 с.

Рассмотрим все те же четыре фактора:

– время выполнения задач в последовательности событий. 1 с для задачи Интерфейс Кнопок, 6 с для задачи Диспетчер, затем 10 с для задачи Интерфейс Датчиков и 12 с для задачи Интерфейс Центрального блока. В итоге получаем Сс = 29 с. Коэффициент использования ЦП за счет выполнения Uc = Сс / Тс= 0,05;

– время вытеснения более приоритетными задачами с меньшими периодами. По восемь раз могут выполниться задачи Интерфейс Кнопок (случай а), Интерфейс Датчика вызова технической службы, Контроллер Системы (случай с), Диспетчер (случай e) (вытесняют задачи Диспетчер (случай f), Интерфейс Датчиков (случай 2), Интерфейс Центрального блока(случай 2)), что в сумме дает 120 с.

Задачи Интерфейс Датчиков (случай 1), Интерфейс Центрального блока(случай 1), Контроллер Системы (случай d) (вытесняют задачи Диспетчер (случай f), Интерфейс Датчиков (случай 2), Интерфейс Центрального блока(случай 2)) в состоянии выполниться по два раза, на что уйдет еще 54 с. Следовательно, общее время вытеснения более приоритетными задачами Сp = 120 + 54 = 174 с, а соответствующий коэффициент использования Up = Cp/Tp =0,29;

– вытеснение более приоритетными задачами с большими периодами. Поскольку эта последовательность имеет наибольший период, таких задач нет;

– время блокировки. Блокировка из-за доступа к разделяемому объекту другими задачами уже принята во внимание, дополнительных затрат на блокировку нет.

Таким образом, получаем:

Суммарное  затраченное  время = время выполнения + время вытеснения + время блокировки в худшем случае = 29 + 174 + 0 = 203 с, что меньше периода, равного 600 с.

Полный коэффициент использования = коэффициент использования за счет выполнения + коэффициент использования за счет вытеснения + коэффициент использования за счет блокировки = Up + Ue = 0,05 + 0,29 = 0,34, что меньше верхней границы 0,69.

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

Рис.38. Система регистрации метеонаблюдений: диаграмма последовательности с временными метками


 

А также другие работы, которые могут Вас заинтересовать

13585. Инфляция это единственная форма наказания без законного основания 15.64 KB
  Инфляция единственная форма наказания без законного основания М. Фридман Автор данного высказывания затрагивает проблему роли и места инфляции в экономике ее воздействия на субъекты рынка. Данная проблема очень актуальна в наши дни ведь борьба с растущей инфл...
13586. Инфляция – единственная форма наказания без законного основания (Милтон Фридмен) 17.84 KB
  Инфляция – единственная форма наказания без законного основания Милтон Фридмен Выбранное мною высказывание посвящено сущности понятия инфляции и ее роли в рыночной системе экономики. Эта проблема всегда остается актуальной особенно в условиях рыночной экономик
13587. Инфляция - единственная форма наказания без законного основания. Милтон Фридман 16.89 KB
  Инфляция единственная форма наказания без законного основания Милтон Фридман Выбранное мною высказывание поднимает проблему роли и места инфляции в экономике а также её воздействия на субъектов рынка. Данная проблема достаточно актуально для многих развивающихся...
13588. Экономическая конкуренция – это не война, а соперничество в интересах друг друга 16.45 KB
  Экономическая конкуренция – это не война а соперничество в интересах друг друга. Э. Каннан В выбранном мною высказывании рассматривается сущность такого понятия как экономическая конкуренция ее важность для экономики рыночного типа. В современной России основы р
13589. Конкуренцию никак нельзя соединить с планированием, не ослабляя ее как фактор организации производства 13.98 KB
  Конкуренцию никак нельзя соединить с планированием не ослабляя ее как фактор организации производства. Ф. фон Хайек Выбранное мною высказывание связано с пониманием сущности конкуренции и ее антипода – планирования. Именно конкуренция обеспечивает взаимосвязи ры
13590. Слово «кризис», написанное по-китайски, состоит из двух иероглифов: один означает «опасность», другой – «благоприятная возможность» 15.47 KB
  Слово кризис написанное покитайски состоит из двух иероглифов: один означает опасность другой – благоприятная возможность Джон Кеннеди В данном высказывании затрагивается проблема сущности экономического кризиса и его последствий. Эта проблема очень актуа
13591. Торговля не разорила еще ни одного народа 18.87 KB
  Торговля не разорила еще ни одного народа. Б. Франклин В выбранном мною высказывании автор рассматривает сущность международной торговли и ее роли и значения для развития национальной экономики. В наше время этот вопрос актуален как никогда. Именно сейчас особо явн...
13592. Цены монополии во всех случаях являются самыми высокими из тех, которые можно выжать из покупателей 30 KB
  Цены монополии во всех случаях являются самыми высокими из тех которые можно выжать из покупателей А. Смит. Выбранное мною высказывание затрагивает вопрос о сущности монополизма и его опасности для потребителя. В России проблема монополизма также стала актуальной ...
13593. Погоня за прибылью Эссе по высказыванию 30 KB
  Погоня за прибылью – единственный способ при помощи которого люди могут удовлетворить потребности тех кого они вовсе не знают. Ф. Хайек Выбранное мною высказывание связано с предпринимательской деятельностью ее целями и задачами. Эта тема несомненная актуальна ос...