Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Управляющие программы




 

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

В работе [17] представлен полный обзор средств, необходимых управляющим программам систем реального времени. Данная тема обсуждается в монографии [80], где также кратко рассмотрены коммерческие разработки управляющих программ для систем реального времени. Несмотря на то что на рынке программных продуктов существует несколько управляющих программ систем реального времени, их часто проектируют самостоятельно как части систем из-за специальных требований, предъявляемых к конкретным системам реального времени.

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

 

1. Часы реального времени периодически предоставляют информацию для планирования процессов.

2. Обработчик прерываний управляет апериодическими запросами к сервисам.

3. Планировщик просматривает список процессов, которые назначены на выполнение, и выбирает один из них.

4. Администратор ресурсов, получив процесс, запланированный на выполнение, выделяет необходимые ресурсы памяти и процессора.

5. Диспетчер запускает на выполнение какой-либо процесс.

 

Рис. 13.4. Компоненты управляющей программы реального времени

 

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

 

Конфигуратор отвечает за динамическое переконфигурирование аппаратных средств [205]. Не прекращая работу системы, из нее можно извлечь аппаратные модули и изменить систему посредством добавления новых аппаратных средств.

Менеджер неисправностей отвечает за обнаружение аппаратных и программных неисправностей и предпринимает соответствующие действия по их исправлению. Вопросы отказоустойчивости и восстановления систем рассматриваются в главе 18.

 

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

 

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

2. Тактовый уровень приоритетов присваивается периодическим процессам.

 

Еще один уровень приоритетов может быть у фоновых процессов, на выполнение которых не накладываются жесткие временные ограничения, (например, процесс самотестирования). Эти процессы выполняются тогда, когда есть свободные ресурсы процессора.

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

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...