Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Все лекции по системам реального времени.pdf
Скачиваний:
252
Добавлен:
02.05.2014
Размер:
8.11 Mб
Скачать

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

293

Суммарный коэффициент использования за счет вытеснения ра-

вен 0,2 + 0,06 = 0,26.

Полный коэффициент использования = коэффициент использо- вания за счет вытеснения + коэффициент использования за счет вы-

полнения = 0,26 + 0.12 = 0,38 < 0,69.

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

11.8. Пересмотр проекта

Если первоначальный проект не отвечает требованиям, предъяв- ляемым к эффективности, то его необходимо пересмотреть. Для этого применяются критерии разбиения на задачи и критерии инверсии за-

дач, в частности более слабые формы группировки задач (темпораль- ная инверсия) и другие виды инверсии: инверсия нескольких экземп- ляров задачи и инверсия последовательных задач.

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

Круиз-Контроль посылает команду задаче Корректировка Скорости,

которая, в свою очередь, отправляет сообщения задаче Интерфейс Дросселя. Эти три задачи можно объединить, применив инверсию по- следовательных задач, то есть заменив их одной задачей Круиз-Кон-

троль с пассивными объектами Корректировка Скорости и Интер-

фейс Дросселя. Таким образом были бы устранены накладные расхо- ды на межзадачные коммуникации и контекстное переключение. Пусть время ЦП, потребляемое инвертированной задачей, равно Сv . Обратившись к табл. 17.2, получаем:

Сv = С4 + C6 + C8

(уравнение 4)

Время, необходимое для выполнения двух задач в новой после- довательности обработки события Сee равно

Cee = C1 + C2 + Cv + Cm + 2Сx

(уравнение 5)

www.pdffactory.com

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

294

Интересно сравнить уравнение 5 (в последовательности только две задачи) с уравнением 1 из раздела 17.5 (в последовательности че- тыре задачи); накладные расходы на обмен сообщениями уменьши- лись с 3Сm до Сm , а на контекстное переключение с 4Сx до 2Сx . Воспользовавшись оценками времени из табл. 17.2, увидим, что пол- ное время выполнения сократилось с 35 до 32 мс. Если бы накладные расходы были выше, экономия оказалась бы более существенной. Например, при Сm = 3 мс и Сx = 2 мс общее время выполнения апе- риодических задач уменьшится с 47 до 37 мс.

11.9. Оценка и измерение параметров производительности

Прежде чем приступать к анализу производительности, необхо- димо оценить или измерить различные временные параметры. Это независимые переменные. Оценки для зависимых переменных дает теория планирования в реальном времени.

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

Ниже приведены параметры, которые нужно оценить для каж- дой задачи:

период задачи Тi, то есть частота ее выполнения. Для перио-

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

время выполнения Сi, то есть потребляемое задачей время процессора. На этапе проектирования можно лишь приблизительно охарактеризовать эту величину. Оцените число строк исходного тек- ста задачи и число команд в откомпилированном коде. Воспользуй- тесь контрольными примерами, написанными на выбранном языке

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

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

www.pdffactory.com

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

295

Следующие три показателя необходимо определить, выполняя измерения для контрольного примера, работающего в тех же услови- ях:

затраты на контекстное переключение. Время, которое опе-

рационная система расходует на передачу ЦП от одной задачи к дру- гой (см. главу 4);

затраты на обработку прерываний. Время, предназначенное для обработки прерываний;

затраты на межзадачные коммуникации и синхронизацию.

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

Эти параметры включаются в расчет времени ЦП, потребляемо- го задачей, как было показано в примерах выше.

www.pdffactory.com