На главную | Содержание | Назад | Вперёд
Наши друзья

 

 

Условия эффективности приоритетного обслуживания в реальном времени. Критерий оптимальности

Гарантированная продолжительность реакции системы
Рассмотрим, с какой целью и при каких условиях следует назначать при­оритеты заявкам на обслуживания в реальном времени. При этом, говоря о заявках на обслуживание, будем понимать, что заявки принад­лежат к различным типам и каждый тип заявок образует свою очередь.
Пусть в систему реального времени поступает М типов заявок на обслу­живание. Тогда условием корректности функционирования системы бу­дет выполнение неравенств:
где: - гарантированная продолжительность реакции системы на воз-
действие, реализуемое в системе, - задаваемое условиями функционирования ограничение на па­раметр
Требуемая реактивность системы по каждому от-му воздействию опреде­ляется следующими характеристиками обслуживания заявок системой:
* - продолжительностью собственно решения w it задачи по за­ранее известной программе (здесь для простоты считаем, что обраба­тывается только один соответствующий тип воздействий);
» числом информационных взаимодействий с ресурсом ьг , необходи­мым для выработки адекватного воздействия в соответствии с заранее известным алгоритмом (далее для простоты будем считать, что = /// = 1 ?..., Af) •
* Т„т - максимальной продолжительностью взаимодействия с ресурсом.
Тогда гарантированная продолжительность реакции системы на воз­действие составит:
Т    =Т    h-L Ч
грст   ~     грзт гт гот'
Рассмотрим следующие возможные случаи:
1. Пусть требуется обеспечить равное время реакции системы на все воздействия — Тг3рс для всех m, т = \,...,М воздействий совпадают. В этом случае идеальным является бесприоритетное обслужива­ние — в реальном времени это передача полномочий в цикличес­кой очередности.
2. Пусть £!_ заданы различными, то есть различен функциональный смысл воздействий. Именно это имеет место в рассматриваемом нами случае, когда контролируемые объекты имеют различный физический смысл. В этом случае при бесприоритетной дисципли­не обслуживания требований система может функционировать кор­ректно лишь при выполнении для всех М заявок самого жесткого для системы ограничения.
Критерий оптимальности дисциплины обслуживания
Предположим, что рассматриваемое жесткое ограничение в системе
при выбранной производительности технических средств не выполняется для некоторых заявок. При этом, в общем случае, некоторые ограничения в системе могут выполняться с большим запасом по производительности ресурса. Тогда можно сформулировать задачу об эффективном перераспределении производительности вычислительных средств системы с учетом выполнения требований к корректности функционирования системы в целом.
Критерием оптимальности задания очередности передачи прав на заня­тие ресурса (соответственно дисциплины обслуживания) будет относи­тельный коэффициент избыточности в эффективности обслуживания:
Т3
К _ гРст
ГгРст -Т
При этом очевидно, что наиболее эффективно система с общими ре­сурсами будет реализована в том случае, если выполняются условия
TL
®тг?с,„ = т' " - К m = \.....м. Это можно считать условием оптимальнос­ти дисциплины обслуживания реального времени, а параметр крите­рием оптимальности.
Т3
В общем случае для критерия оптимальности &тгрся = т^г^ * при реализа­ции бесприоритетного обслуживания имеем:
s Тг1*'«__
mm ! Т'!Н. ,m = 1, Л/}
m
Выигрыш в производительности системы реального времени при реализации приоритетного обслуживания
Оценим, какой выигрыш может дать реализация в системе приоритет­ного обслуживания, где приоритет вводится с целью эффективного ис­пользования производительности общего ресурса (при связном ресурсе -эффективного использования пропускной способности канала связи). С учетом Z, = 1 для всех М заявок, для системы с бесприоритетной дис­циплиной обслуживания (характеристика обозначена БП) требований ре­сурса имеем:
■у I'll = j^fj"
где - продолжительность занятия ресурса с учетом потерь времени
на передачу ему прав системой занять ресурс. При это счита­ем, что        совпадают для всех М очередей заявок.
Пусть требования к времени реакции системы на 1-е входное воздействие существенно выше, чем требования к любому иному входному воздействию m = 2,...,М: Тг3рСт1 « Т3рс^ и. Реализуем для рассматриваемой системы
приоритетную дисциплину обслуживания требований, в которой очеред­ность предоставления прав заявкам на занятие ресурса (цикл расписания) выглядит следующим образом: (1, 2, 1, 3, 1, 4, 1, ... , 1, М~\, 1, М).
309
Часть V.  Контроль корректности функционирования механизмов защиты
Для данной дисциплины обслуживания имеем следующие характеристи­ки обслуживания заявок:
TJln_=2(m-\)TFPm,
где ВП и -- соответвенно характеристики абонентов с высоким и низким приоритетом, откуда выигрыш для более приоритетной заяки составит:
Tjn М
Зтвп =       = ~Т ^тя всех m Т<?~ = Т'^-
Однако, наряду с выигрышем для более приоритетной заявки, имеем и проигрыш для менее приоритетной заявки:
Т™ 2(М-\)_2
т""   тгоБП ' м
Откуда результирующий выигрыш в производительности ресурса:
Tjf м
та,_    j,hii - •
Количественная оценка выигрыша
Рассмотрим количественную оценку получаемого выигрыша. Пусть
=А''/'.„в, где 0 < к <     В предположении, что L,n! - \, m = \,...,M для
бесприоритетного обслуживания имеем:
Соответственно, для приоритетного обслуживания при двух уровнях при­оритета получаем:
отсюда получаем результирующий выигрыш в производительности системы:
к)2
От    — —
1 .-ш-^.
(2 + к)(2(М -\) +
Зависимости 8Т =f(k) для различных М, при М= 16 и М= 64 пред­ставлены 1. Можно сделать следующие выводы.
1. При существенном различии ограничений для М заявок (ти-
пов заявок или очередей) при условии [ появляется возмож­ность существенного повышения производительности системы ренлыюго времени, за счет реализации эффективного управления ис­пользованием вычислительного ресурса заявками в результате вве­дения приоритетного обслуживания. Обычно это является «узким местом» системы. Получаемый выигрыш в производительности си­стемы в целом здесь может составить десятки раз, возрастая при увеличении числа типов заявок (очередей) в системе М.
2. Получаемый от реализации приоритетного расписания выигрыш снижается при увеличении коэффициента к, или при опережаю­щем росте Т над Тго , что определяет переход к классу сосредо­точенных систем.
3. При к>1 из (18.1) имеем 8Т =к2/к2=\,то есть отсутствует выигрыш как таковой. Это может" иметь место для некоторых при­ложений сосредоточенных систем, когда Т    » Тго . В этом случае
теряет актуальность задача при­оритетного обслуживания заявок с
целью эффективного использова­ния ресурса.
Нетрудно показать, что предельным
случаем системы, где наиболее эффек­тивно включение приоритетного обслу­живания и «узким местом» которой бу-
J -2 -t 0 2 lQ
дет общий вычислительный ресурс
ресурс, можно считать многозадачную        _      1Я 1 и
операционную систему реального вре-   выигрыша в производительности
мени, т.е. именно те приложения, ко-    системы реального времени при
торые нами рассматриваются в работе.      реализации приоритетного
обслуживания
Выводы
С учетом сказанного можем сформулировать цель назначения приорите­тов при обслуживании запросов по расписанию для систем реального вре­мени. При этом помним, что в этих системах имеется общий ресурс и именно он является «узким местом».
Итак, цель реализации приоритетного обслуживания в системах реаль­ного времени состоит в перераспределении прав между заявками (очере­дями заявок) на доступ к ресурсу в соответствии с заданными ограниче­ниями времени реакции системы на входное воздействие. Выполнение данных ограничений при минимальной производительности ресурса до­стигается при выполнении условия: 8Г = I, т = \...,М. Таким образом, условие ST = I можно считать условием оптимальности приоритетной дисциплины обслуживания реального времени.
Реализация приоритетных расписаний в современных ОС
Принципы приоритетного обслуживания заявок в современных универсальных ОС
Прежде чем перейти к дальнейшему рассмотрению вопросов синтеза приоритетных расписаний для рассматриваемых приложений, рассмотрим, каким образом можно реализовать обслуживание заявок по расписаниям в современных ОС.
В большинстве современных универсальных ОС алгоритм передачи управ­ления (системных ресурсов центрального процессора) базируется на меха­низме назначения относительных приоритетов. В соответсвии с этим меха­низмом каждой программе может быть назначен свой приоритет. Диапазон приоритетов в разных ОС колеблется от 6 до нескольких десятков.
Диспетчер задач распределяет кванты времени между задачами в соот­ветствии с их приоритетами. При этом ресурсы центрального процессо­ра будут переданы той задаче, у которой более высокий приоритет. При
этом до истечения кванта выданного ей процессорного времени, програм­ма не может быть прервана (если только сама не отдаст управление). Та­ким образом, речь идет об обслуживании заявок по дисциплине с отно­сительными приоритетами. Эта дисциплина не позволяет корректно реализовать расписания реального времени.
Если же у всех текущих задач приоритеты равны, то в общем случае ресурсы центрального процессора будут передаваться задачам в порядке
их поступления (бесприоритетная дисциплина обслуживания, но опять же не реального времени).
Основу реализации приоритетного расписания на базе дисциплины обслу­живания с относительными приоритетами составляет изменение относи­тельных приоритетов по расписанию. Другими словами, в каждый момент времени реализуется дисциплина обслуживания с относительными приори­тетами, которые изменяются в процессе функционирования системы (при каждом предоставлении ресурса задаче). Таким образом и реализуется приоритетное расписание. Возникает вопрос: «Какое средство (задача) будет осуществлять перераспределение относительных приоритетов по расписа­нию?» Поиском ответа мы и займемся в следующем пункте.
Подход к реализации в современных ОС управления по приоритетным расписаниям
Рассмотрим подход к реализации в ОС передачи управления в соответ­ствии с приоритетным расписанием. Данный подход состоит в следующем:
» Выделяются задачи, реализующие собственно защиту от НСД механиз­мом уровневого контроля списков. Им назначается высокий относитель­ный приоритет.
» Среди данных задач выделяется одна, осуществляющая диспетчериза­цию заявок (передачу полномочий между заявками на занятие ресурса) - ей назначается максимальный относительный приоритет. « Выделяются прикладные задачи. Им назначается низкий приоритет.
Таким образом, из очереди будет выбираться всегда задача, имеющая мак­симальный приоритет — задача, обеспечивающая диспетчеризацию заявок. Получив управление, задача может либо занять вычислительный ресурс,
либо передать его на квант вре­мени (обозначим это время как прикладным задачам. Т.е. задача, реализующая защиту от НСД, будет распределять время между собой и прикладными за­дачами (реализовывать расписа­ние). Схема такой передачи уп­равления приведена 2.
На схеме обозначен входной поток задач Прибор постановки в оче­редь (А) выбирает из входного потока задачи и распределяет их по оче­редям в соответствии с их приоритетами.
В случае, если задача принудительно отдала управление на заданное время, прибор постановки отложит размещение этой задачи в очередь.
Прибор выбора задачи из очереди (В) выбирает задачи из очередей в со­ответствии с их приоритетами и передает их на обслуживание в цент­ральный процессор (ЦП).
На схеме задачам одного приоритета выдается одна очередь, из которой происходит выборка опять же в соответствии с расписанием.
Выводы
Подытожить вышесказанное можно следующими высказываниями:
1. В современных универсальных ОС основу подхода к приоритетному обслуживанию заявок на контроль событий в реальном времени мо­жет составлять обслуживание с динамическими относительными при­оритетами, изменяемыми по расписанию, при каждом занятии вычис­лительного ресурса.
2. Посредством реализации рассмотренного подхода, в большинстве
современных ОС можно реализовывать расписания (обслуживание в реальном времени) любого уровня сложности. При этом переда­чей управления занимается уже не диспетчер задач ОС (он осуще­ствляет это на более низком уровне), а тот механизм, который специально наделен такими функциями.

 

На главную | Содержание | Назад | Вперёд
 
Яндекс.Метрика