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. Система регистрации метеонаблюдений: диаграмма последовательности с временными метками


 

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

36023. Концентраторы напряжений 34 KB
  Дефекты и конструктивные концентраторы напряжений в элементах способствуют повышению уровня напряженности металла и как следствие снижению ресурса оборудования. Для изделий имеющих конструктивные концентраторы напряжений при оценке влияния дефекта на их работоспособность следует сопоставить степень влияния конструктивного концентратора напряжений и дефекта. При расположении дефекта в зоне концентратора напряжений он может оказывать большее влияние на долговечность изделия чем даже более опасный по его ориентации форме но...
36024. Основные задачи системного администрирования. Процессы и их идентификаторы 34.51 KB
  Процессы и их идентификаторы Для понимания процедуры начальной загрузки необходимо иметь самое общее представление о том что такое процесс в системе поскольку это понятие будет постоянно использоваться в дальнейшем. Процесс это загруженная в оперативную память программа. В Linux вначале запускается процесс который загружает в оперативную память программу из указанного ему файла и начинает ее выполнять. Это означает что каждый процесс должен быть запущен как говорят порожден какимто другим процессом.
36025. Отношения. Переменные отношения. Значение переменных отношения. Базовые переменные отношения и их представления. Предикаты и высказывания 32 KB
  Отношения. Переменные отношения. Значение переменных отношения. Базовые переменные отношения и их представления.
36026. Английский либерализм 19 века, его методологические принципы 36 KB
  Либерализм от лат свободный: идеология индивидуальных прав и свобод; свобода смысл чел жизни а не средство; начало 17в Локк. Идейное содержание: индивидуальная свобода цель общественного прогресса. Милль: индивидуальная свобода независимость чела в сфере действий кас его самого; границы: свобода мысли и мнения выражаемого вовне свобода действовать сообща с другими индивидами свобода выбора целей; угроза свободе не только от гва но и от обществен мнения взглядов большинства = уловил опасность массовой демократии ...
36027. Философия Платона, основные идеи Платона 34.5 KB
  Платон кличка широкий родился в Афинах в 428 или 427 г. Платон отправился в Египет и эта древняя цивилизация произвела на него глубокое впечатление. Платон вернулся в Афины в возрасте сорока лет он основал Академию в которой преподавал до конца своих дней.
36028. Слово как основная единица лексики. Лексика русского языка как система 34.5 KB
  Лексика русского языка как система. Слово основная значимая единица языка. Оно принадлежит лексикосемантическому уровню языка и состоит из единиц низших уровней фонем и морфем: фонемы образуют морфемы а морфемы складываются в слово. Хотя синтаксическая конструкция абстрактное понятие отвлеченное от выражения ее в виде реальных словосочетаний или предложений на это указывает и само слово конструкция многообразные синтаксические конструкции языка воплощаются всегда в конкретных сочетаниях слов и в предложениях.
36029. Художественное образование как феномен культуры 34 KB
  Содержание художественного образования включает: формирование культурноисторической компетентности подразумевающей изучение теории и истории искусства разных эпох и народов; формирование художественнопрактической компетентности подразумевающей овладение средствами художественной выразительности различных видов искусств; формирование художественного вкуса и оценочных критериев в контексте духовнонравственных и эстетических идеалов. Реализация содержания художественного образования происходит на трех уровнях: формирование отношения...
36030. Формы взаимодействия организмов 34 KB
  Ряд исследователей относят к симбиозу любое сожительство в том числе комменсализм паразитизм а к мутуализму взаимовыгодное сожительство. Подобно паразитизму и симбиозу комменсализм обычно связан с добыванием пищи или поиском необходимого укрытия. Паразитизм форма взаимоотношений между организмами растениями животными микроорганизмами относящимися к разным видам из которых один паразит использует другого хозяина в качестве среды обитания и источника пищи возлагая при всём этом частично или полностью на хозяина регуляцию...
36031. Классификация видов экономического анализа. Особенности в содержании, информационной базе и организации отдельных видов экономического анализа 34 KB
  Классификация видов экономического анализа. Особенности в содержании информационной базе и организации отдельных видов экономического анализа По времени: 1. Ретроспективный исторический посмертный анализ; 2. Оперативный ситуационный анализ; 3.