Строгая формулировки теоремы о времени завершения


Теорему о времени завершения можно строго сформулировать следующим образом: Множество независимых периодических задач, планируемых согласно алгорит­му монотонных частот, будет удовлетворять временным ограничениям при любой комбинации моментов запуска тогда и только тогда, когда

,

где Сi и Тi – время выполнения и период задачи tj соответственно, а

Ri = {(k,p): l≤k≤i, p=l,...,[Ti/Tk]}.

В этой формуле ti – это проверяемая задача, a tk – любая из более приоритетных задач, влияющих на время выполнения ti. Для данной пары задач ti и tk каждое зна­чение р представляет некоторую точку планирования задачи tk. В каждой точке планирования необходимо рассмотреть один раз время ЦП Сi, потраченное на зада­чу ti, а также время, израсходованное на более приоритетные задачи. Это позволит определить, успеет ли ti завершить выполнение к данной точке планирования.

Планирование периодических и апериодических задач. Планирование с синхронизацией задач

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

Протокол предельного приоритета [24] позволяет из­бежать тупиковой ситуации и гарантирует ограниченную инверсию приоритетов за счет того, что высокоприоритетная задача может блокироваться самое большее одной низкоприоритетной. Чтобы предотвратить задержку высокоприоритетных задач низкоприоритет­ными на долгое время, применяется коррекция приоритетов. Когда низкоприори­тетная задача t1 оказывается в критической области, она в состоянии блокировать высокоприоритетные задачи, которым нужен тот же ресурс. Если это происходит, то приоритет t1 повышается до максимального из приоритетов блокируемых за­дач. Цель состоит в том, чтобы ускорить выполнение низкоприоритетной задачи и сократить время ожидания для высокоприоритетных.

Предельный приоритет Р двоичного семафора S – максимум из приоритетов всех задач, которые могут занять данный семафор. Таким образом, низкоприори­тетная задача, захватившая S, способна повысить свой приоритет до Р в зависи­мости от того, какие задачи она блокирует.

Еще одна возможная проблема – это тупиковая ситуация (deadlock), которая возникает, когда двум задачам нужно захватить по два ресурса. Если каждая задача захватит по одному ресурсу, то ни одна не сможет завершиться, поскольку будет ждать, пока другая освободит ресурс. Протокол предельного приоритета справля­ется и с такой трудностью [24].

Теоремы о планировании методом монотонных частот необходимо обобщить на задачу об инверсии приоритетов.

99. Развитие теории планирования в реальном времени

Теорию планирования в реальном времени можно применить к множеству параллельных задач либо на этапе проектирования, либо уже после реализации всех задач. Поскольку во время проектирования для времени ЦП существуют только приблизительные оценки, нужно быть осторожнее и при разработке задач реального времени с жесткими временными ограничениями полагаться на песси­мистическую теорему о верхней границе коэффициента использования. Эта тео­рема дает верхнюю границу 0,69 в худшем случае, хотя теория планирования в ре­альном времени часто указывает более высокие значения. Если верхняя граница в худшем случае не может быть достигнута, придется изучить альтернативные решения. С точки зрения проектировщика-пессимиста, оценка верхней границы коэффициента выше 0,69 приемлема при условии, что использование сверх 0,69 целиком обусловлено низкоприоритетными задачами с мягкими временными огра­ничениями или задачами, которые могут исполняться не в реальном масштабе вре­мени. Для таких задач эпизодический пропуск срока выполнения не столь важен.

100. Планирование в реальном времени и проектирование. Пример применения обобщенной теории планирования в реальном времени

В качестве примера рассмотрим следующий случай. Есть четыре задачи: две периодические и две апериодические. Ниже приведены детальные характеристики задач, причем время указано в миллисекундах, а коэффициент использования Ui=Ci/Ti.

Периодическая задача t1: С1 = 20; Т1 = 100; U1 = 0,2.

Апериодическая задача t2: С2 = 15; Т2 = 150; U2 = 0,1.

Управляемая прерываниями задача ta: Сa = 4; Тa = 200; Ua = 0,02.

Периодическая задача t3: C3 = 30; T3 = 300; U3 = 0,1.

Кроме того, известно, что задачи t1, t2 и t3 обращаются к одному и тому же хра­нилищу данных, защищенному семафором S.

Задачам назначены приоритеты в строгом соответствии с алгоритмом моно­тонных частот, то есть t1 имеет наивысший приоритет, а за ней следуют t2, ta и t3 Но, поскольку для ta время реакции жестко ограничено, ей присвоен наивысший приоритет, а уже потом идут t1, t2 и t3

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

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

– время выполнения С1 задачи t1 равно 20. Коэффициент использования U1 = 0,2;

– вытеснение более приоритетными задачами с большими периодами. В эту категорию попадает задача ta. Коэффициент использования за счет вытес­нения на периоде Т1 равен Сa1 = 4/100 = 0,04;

– время блокировки задачами с более низким приоритетом. Потенциально за­блокировать t1 могут задачи t2 и t3. Коэффициент использования за счет блокировки на периоде Т1 составляет B31 = 30/100 = 0,3.

Коэффициент использования в худшем случае равен сумме всех полученных коэффициентов, то есть 0,04 + 0,2 + 0,3 = 0,54, что меньше верхней границы 0,69. Следовательно, t1 удовлетворяет временным ограничениям.

Далее таким же образом рассматриваем остальные задачи



Дата добавления: 2022-05-27; просмотров: 108;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.008 сек.