3.2.1.1.1.      Абсолютные ограничения.

·     Интервал выполнения.

Выражает интервал, предоставляемый задаче для выполнения. Задаётся в микросекундах или как часть интервала выполнения всех задач. Определяет приоритетность определённой задачи на данном этапе вычислений. Может динамически изменяться.

·     Время реакции.

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

·     Время выполнения.

Выражает время выполнения задач в худшем случае. При превышении времени выполнения задача останавливается. В специальный стек «неуложившихся в срок» записывается её идентификатор. Для мягких задач данный параметр не фиксирован. Этот показатель также важен для распределённых (многопроцессорных) систем, где время выполнения задачи может зависеть от узла, на котором она выполняется.

·     Периоды.

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

3.2.1.1.2.      Относительные ограничения.

Ограничения данного класса также называют локальными. Они выражают то, как две задачи связаны друг с другом.

·     Приоритетные ограничения.

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

·     Ограничения расстояния.

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

·     Обновление.

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

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

·     Гармонические ограничения

Эти ограничения связаны с периодами двух взаимодействующих задач. Они имеют место, например, когда период одной задачи (например, получателя) зависит от периода другой (отправителя).

3.2.1.1.3.      Неподдерживаемые ограничения.

·     Отношения.

Данные ограничения выражают максимальный интервал времени между временами завершения двух задач.

·     Разделительные ограничения.

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

3.2.1.2.    Используемые алгоритмы.

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

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

Для динамического перераспределения ресурсов системы будет использована политика управления - round-robin. В этом случае процесс выполняется либо пока выделенный ему квант времени не истечёт, либо пока не будет приостановлен другим процессом с более высоким приоритетом. После того, как время, выделенное для данного процесса, истечёт, активируется следующий готовый к запуску процесс.

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

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

3.2.2.  Описание функционирования приложения.

Схема взаимодействия объектов создаваемой системы показана на диаграмме 10.

3.2.2.1.    Подготовка к запуску планировщика.

Главная программа запускает функцию инициализации планировщика, в которую передается массив структур, состоящий из указателей на планируемые процедуры и из параметров выполнения. В число параметров входят: идентификатор (задается главной программой), приоритет, интервал/квант выполнения, время реакции, время выполнения (для мягких задач может не определяться), период (для периодических функций), количество запусков или время работы (для спорадических задач), порядок, относительно других задач. Также возможна передача указателя на входные параметры процедуры.

В планировщике создается список задач. Создаётся процесс-таймер, который будет формировать последовательность сообщений для планировщика.


Информация о работе «Разработка системы реального времени в виде планировщика исполнения заданий»
Раздел: Информатика, программирование
Количество знаков с пробелами: 104513
Количество таблиц: 2
Количество изображений: 0

Похожие работы

Скачать
148576
34
0

... элементов, глобальное пространство имен, а также лавинообразную первоначальную загрузку сети. Таким образом ОСРВ SPOX имеет необходимые механизмы для создания отказоустойчивой распределенной операционной системы реального времени, концепция построения которой описана в главе 2. 4.3 Аппаратно-зависимые компоненты ОСРВ Модули маршрутизации, реконфигурации, голосования реализованы как аппаратно- ...

Скачать
47787
0
3

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

Скачать
106529
0
0

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

Скачать
97444
7
6

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

0 комментариев


Наверх