Студопедия — Представление процессов
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Представление процессов






Параллелизм в ISSS основывается на элементах типа «приложение» (application). Приложение в данном случае примерно соответствует процессу (в том смысле, который вкладывал в это понятие Дийкстра, рассуждая о кооперации последовательных процессов) и лежит в центре методики, которую разработчики ISSS адаптировали для обеспечения отказоустойчивости. Каждое приложение реализуется в виде «основного» модуля языка Ada (процесса, планируемого операционной системой) и составляет один из элементов CSCI (что помогает выявить соответствие между представлениями декомпозиции модулей и процессов). Взаимодействие приложений проходит в форме передачи сообщений, которые в рамках представления «компонент и соединитель» выступают в роли соединителей.

В конструкции системы ISSS предусматривается возможность многопроцессорной обработки. Логическая комбинация процессоров называется группой процессоров (processor group — об этом мы говорили применительно к физическому представлению), а предназначена она для размещения ряда отдельных копии одного или нескольких приложений. На этом принципе основывается отказоустойчивость, а следовательно, и готовность. Одна исполняемая копия является первичной, а все остальные — вторичными; отсюда названия отдельных копии приложения: основное адресное пространство (primary address space, PAS) и запасное адресное пространство (standby address space, SAS). Совокупность основного адресного пространства и сопровождающих его запасных адресных пространств называется операционным блоком (operational unit). Каждый отдельно взятый операционный блок полностью размещается в процессорах одной группы - напомним, ч го на одну группу может приходиться от одного до четырех процессоров. Те элементы системы ISSS, которые конструируются без расчета на отказоустойчивость (другими слонами, не предполагают сосуществования основной и запасной версий), запускаются независимо на разных процессорах. Называемые функциональными группами (functional groups), они при необходимости могут быть размещены на любом процессоре; при этом каждая копия представляет собой отдельный экземпляр программы с собственным состоянием.

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

Приложения взаимодействуют по модели «клиент-сервер». Клиент транзакции отсылает серверу сообщение-запрос на обслуживание (service request message), на которое тот отвечает подтверждением. (Как и во всех прочих реализациях клиент-серверной схемы, любая сторона — в данном случае приложение — в одной транзакции может выступать в роли клиента, а в другой — в роли сервера.) Основное адресное пространство (PAS) внутри операционного блока отправляет всем своим резервным пространствам (SAS) уведомления о смене состояния; резервные пространства, готовые в случае отказа основного пространства или соответствующего процессора заменить его, постоянно пребывают в состоянии ожидания тайм-аутов и других стимулов к действию. Рисунок 6.6 иллюстрирует координацию основного и резервных адресных пространств приложения при резервировании и передаче результатов их взаимодействия группам процессоров.

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

Переключение в случае отказа основного адресного пространства происходит бедующим образом:

1. Одно из резервных адресных пространств становится основным.

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

3. Для замены предыдущего основного адресного пространства запускается новое резервное адресное пространство.

4. Новое резервное адресное пространство извещает новое основное пространство о своем существовании и с этого момента начинает получать от последнего сообщения с обновлениями.

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

Введение нового операционного блока осуществляется следующим образом-

♦ Определяются и локализуются необходимые входные данные.

♦ Определяются операционные блоки, рассчитывающие на получении выходных данных от нового операционного блока.

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

♦ Сообщения конструируются в расчете на достижение заданных данных.

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

♦ Данные состояния разбиваются на сообщения, соответствующие формату применяемой сети.

♦ Определяются необходимые типы сообщений.

♦ На случай отказов составляется план переключения, который в целях обеспечения полноты состояния регулярно обновляется.

♦ Планируется непротиворечивость данных в случае переключения.

♦ Необходимо сделать так, чтобы отдельные этапы обработки проходили быстрее, чем продолжается один «такт» системы.

♦ Планируются протоколы совместного с другими операционными блоками использования данных и протоколы блокирования данных.

Выполнение этой последовательности действий под силу только группам, состоящим из опытных разработчиков. Тактика, которую мы рассмотрим в следующем разделе — «кодовые шаблоны», — призвана сделать этот процесс в большей степени повторяемым и снизить вероятность ошибок.

Представление процессов отражает сразу несколько тактик реализации готовности — в частности, «повторную синхронизацию состояния», «затенение», «активное резервирование» и «снятие с эксплуатации».







Дата добавления: 2015-04-16; просмотров: 463. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Ведение учета результатов боевой подготовки в роте и во взводе Содержание журнала учета боевой подготовки во взводе. Учет результатов боевой подготовки - есть отражение количественных и качественных показателей выполнения планов подготовки соединений...

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

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

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

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

Типовые ситуационные задачи. Задача 1. Больной К., 38 лет, шахтер по профессии, во время планового медицинского осмотра предъявил жалобы на появление одышки при значительной физической   Задача 1. Больной К., 38 лет, шахтер по профессии, во время планового медицинского осмотра предъявил жалобы на появление одышки при значительной физической нагрузке. Из медицинской книжки установлено, что он страдает врожденным пороком сердца....

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия