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

Централизованное управление




 

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

 

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

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

 

Модель вызова-возврата представлена на рис. 10.5. Из главной программы можно вызвать подпрограммы 1, 2 и 3, из подпрограммы 1 – подпрограммы 1.1 и 1.2, из подпрограммы 3 – подпрограммы 3.1 и 3.2 и т.д. Такая модель выполнения подпрограмм не является структурной – подпрограмма 1.1 не обязательно является частью подпрограммы 1.

 

Рис. 10.5. Модель вызова-возврата

 

Подобная модель встроена в языки программирования Ada, Pascal и С. Управление переходит от программы, расположенной на самом верхнем уровне иерархии, к подпрограмме более нижнего уровня. Затем происходит возврат управления в точку вызова подпрограммы. За управление отвечает та подпрограмма, которая выполняется в текущий момент; она может либо вызывать другие подпрограммы, либо вернуть управление вызвавшей ее подпрограмме. Несовершенство данного стиля программирования при возврате к определенной точке в программе очевидно.

Модель вызова-возврата можно использовать на уровне модулей для управления функциями и объектами. Подпрограммы в языке программирования, которые вызываются из других подпрограмм, являются естественно функциональными. Однако во многих объектно-ориентированных системах операции в объектах (методы) реализованы в виде процедур или функций. Например, объект Java запрашивает сервис из другого объекта посредством вызова соответствующего метода.

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

На рис. 10.6 представлена модель централизованного управления для параллельной системы. Подобная модель часто используется в "мягких" системах реального времени, в которых нет чересчур строгих времениых. ограничений. Центральный контроллер управляет выполнением множества процессов, связанных с датчиками и исполнительными механизмами. Система, использующая такую модель управления, рассмотрена в главе 13.

 

Рис. 10.6. Модель централизованного управления для системы реального времени

 

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

Поделиться:





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





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



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