Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по дисциплине СРВ (Артемов СП).doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
2.5 Mб
Скачать

Планирование задач

Планирование задач – алгоритм построения очереди задач на выполнение.

Алгоритмы:

  • статические

  • динамические

Статические алгоритмы основаны на применении основных характеристик задач и подразумевают построение примерного плана их исполнения.

Достоинства:

1. Если система предсказуема на первом шаге, то она будет предсказуема на всех других.

2. Система может пойти неверно, если последовательность построена неверно.

Недостатки:

1. Использование в каждом цикле исполнения задачи одной и той же последовательности задач.

2. Изменение очередности исполнения задач не допускается.

Рис.5.

В результате действия алгоритма существует вероятность накопления суммарной «нехватки времени». В системе могут накопиться остатки неиспользованного времени.

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

Достоинства:

  1. Оптимальное распределение временных участков подзадач.

  2. Возможность дополнения списка задач в процессе функционирования системы.

Недостатки:

  1. Сложность реализации алгоритмов.

  2. Повышенные требования к вычислительному узлу.

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

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

Рис.6.

Существует множество алгоритмов планирования задач. Рассмотрим 7 алгоритмов.

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

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

Есть два подхода к построению:

  1. Фиксированный приоритет задач. Приоритет вычисляется один раз до запуска системы и остаётся неизменным в течение цикла функционирования задач.

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

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

  1. Алгоритмы планирования задач с фиксированным приоритетом.

  2. Вытесняющие алгоритмы планирования задач (подразумевает возможность вытеснения одной задачи другой, в зависимости от приоритета).

Существует три основных алгоритма планирования:

  • RM

  • EDF

  • LSTF

RM (алгоритм с фиксированным приоритетом)

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

Рис.7.

Чем реже вызывается задача, тем выше у нее приоритет.

EDF (алгоритм с динамическим планированием задач)

Приоритет назначается согласно следующему принципу: чем меньше срок выполнения, тем выше приоритет.

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

LSTF (алгоритм планирования)

Приоритет задачи назначается согласно следующему принципу: чем меньше время связывания задачи, тем выше приоритет.

t – физическая величина, время выполнения задачи, задается пользователем.

Свойства задач:

Задача – объект, который имеет метод, выполняемый в системе реального времени.

Задача – это единица измерения объектов системы исполнения реального времени.

  1. Тип задачи (P, A, S, F, O).

P периодические

A апериодические

S спорадические

F фоновые

O аппендиксы

  1. T – период.

  2. t – время выполнения.

  3. Критический крайний срок D исполнения.

  4. tв – время начала функционирования задачи; определяет такт времени, в который задача начинает функционировать каждый цикл.

Приоритет зависит от алгоритма планирования и является произвольным.

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