Декларативное объявление сервисов в динамических компонентных системах Автор: Маврин П.Ю. Научный руководитель: Корнеев Г.А.
Декларативное объявление сервисов в динамических компонентных системах2 Компонентные системы
Декларативное объявление сервисов в динамических компонентных системах3 Сервисы компоненты A Предоставляемые сервисы Используемые сервисы
Декларативное объявление сервисов в динамических компонентных системах4 Зависимости AB ASB Граф зависимостей: S
Декларативное объявление сервисов в динамических компонентных системах5 Порядок запуска AB S
Декларативное объявление сервисов в динамических компонентных системах6 Запуск системы
Декларативное объявление сервисов в динамических компонентных системах7 Динамические компонентные системы Можно добавлять и удалять компоненты во время работы системы Изменяется граф зависимостей Автоматический запуск и остановка компонент
Декларативное объявление сервисов в динамических компонентных системах8 Добавление компоненты
Декларативное объявление сервисов в динамических компонентных системах9 Удаление компоненты
Декларативное объявление сервисов в динамических компонентных системах10 Алгоритм Храним для каждой компоненты число неактивных используемых сервисов p[i] Если p[i] = 0, то компоненту можно запустить Рекурсивно запускаем или останавливаем компоненты, одновременно пересчитывая p[i]
Декларативное объявление сервисов в динамических компонентных системах11 Добавление компоненты
Декларативное объявление сервисов в динамических компонентных системах12 Усложнение Режим запуска –Инициативный: компонента запускается всегда если это возможно –Пассивный: компонента запускается если это требуется для запуска инициативных компонент
Декларативное объявление сервисов в динамических компонентных системах13 Решение Компонента форсирована: –Компонента инициативна или –От компоненты зависит форсированная компонента Форсированность компонент можно также пересчитывать используя счетчики
Декларативное объявление сервисов в динамических компонентных системах14 Дополнительные задачи Определение ошибок: –Тупиковые зависимости –Циклические зависимости
Декларативное объявление сервисов в динамических компонентных системах15 Спасибо за внимание