Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СистПриклПрогЗабез(Хихловская).doc
Скачиваний:
28
Добавлен:
10.02.2016
Размер:
961.02 Кб
Скачать

Описание блока блк-дир

Описание этого блока приведено на рис. . Он содержит единственный процесс ДИР, к которому поступают заказы на ОС, т.е. примитивы С-СДН-зпр м Т-СДН-инд. Процесс Сеанс маршрутами П-Д-Д, Т-Д-Д и Д-И-Д с каналами П-Д, Т-Д и Д-И соответственно. Получив заказ, процесс ДИР посылает сигнал ПРЖД (см. ) и ждет поступления подтверждения об установлении сначала ТС (сигнал ТС-УСТ), если только не используется имевшееся ранее транспортное соединение, а потом – СС (сигнал СС-УСТ). Получив их, ДИР ждет поступления новых запросов. Получив сообщение о прекращении СС, ДИР делает у себя соответствующую отметку (напомним: С-элемент может обеспечить не более М одновременно действующих соединений).

Описание блока блк-исп

1. Описание блока БЛК-ИСП приведено на рис. . При этом для реализации каждого отдельного СС будет создаваться отдельный экземпляр процесса, осуществляющего это соединение. Назовем этот процесс ИСП (исполнитель). Отметим, что личный идентификатор этого экземпляра будет одновременно идентификатором СС. Таким образом, сигнал ПРЖД, поступающий от процесса ДИР, означает по существу заказ на порождение нового экземпляра процесса ИСП.

2. Так как, процесс, находящийся в одном блоке, не может породить процесс в другом блоке, то в блоке БЛК-ИСП должен находиться процесс, назовем его РДТ (родитель), возникающий вместе с созданием всей системы. Этот процесс будет принимать сигнал ПРЖД' и создавать на основании этого очередной экземпляр процесса ИСП.

  1. Если для установления СС создавать ТС не нужно, то это означает, что после поступления С-СДН-зпр соответствующий экземпляр процесса ИСП вместо того, чтобы выдавать примитив Т-СДН-зпр (который затем поступает к вызываемому ДИР в виде Т-СДН-инд), может прямо послать блок ЗС (запроса на соединение). Этот блок поступит непосредственно к процессу РДТ, тот сообщит об этом процессу ДИР (по сигналу РДТ-ДИР) и, получив от него «добро» (по сигналу ПРЖД; возможный отказ мы не учитываем), создаст экземпляр процесса ИСП, после чего сообщит процессу ДИР (сигналом РДТ-ДИР) идентификатор созданного экземпляра процесса ИСП; этот ИСП реализует запрошенное в ЗС соединение. Он же будет посылать процессу ДИР сигналы ТС-УСТ. СС-УСТ, СС-ПРЩ.

4. Таким образом, блок ЗС будет поступать либо к процессу РДТ (в случае, когда было использовано имевшееся ранее ТО, либо к процессу ИСП (в случае, когда для данного СС создавалось новое ТС). В связи с этим, как мы видим на рис. , сигнал ЗС, поступающий по каналу Т-И направляется как по маршруту Т-И-Р, так и по маршруту Т-И-И.

5. Маршруты, соединяющие процессы РДТ и ИСП с каналами, и распределение сигналов по маршрутам изображено на рис. , и мы их здесь не описываем.

Рис.

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

1. Протокол СС описан с помощью таблицы переходов.

Таблицы и являются таблицами переходов процессов ДИР и РДТ соответственно. В клетках этих таблиц стоят номера переходов, описанных далее в табл. .

Таблица 10.3. Директор

Входное событие

Состояние

Бездействие

Ожидание РДТ-ДИР

Ожидание ТС-УСТ

Ожидание СС-УСТ

Д1

Д2

ДЗ

Д4

С-СДН-зпр

1

«

*

*

Т-СДН-инд

2

*

«

РДТ-ДИР

3

4

9

9

ТС-УСТ

8

9

5

9

СС-УСТ

8

9

9

6

СС-ПРЩ

7

9

9

7

ДТМ

8

9

9

9

•Восприятие сигнала должно быть отсрочено до перехода в состояние Д1.

Таблица 10.4. Родитель

Входное событие

Состояние

Бездействие

Ожидание ПРЖД

Р1

Р2

ПРЖД ЗС

10 11

10 12

2. При разработке процессов ДИР. РДТ и ИСП мы считаем, что если в течение фазы установления соединения в их функционировании обнаруживается какая-то ошибка, то ни пользователь соединения (т.е. П-элемент), ни его напарник об этом не оповещаются, так как оба они включают у себя таймеры, которые по истечении сроков сообщают им о том, что СС не состоялось.

3. При этом, если ошибка обнаружилась:

у ДИР, то он уничтожает соответствующий ИСП (сигналом СМР), если успел создать его к этому времени;

у РДТ, то он уничтожает соответствующий ИСП (сигналом СМР), если успел создать его к этому времени, и оповещает об этом сигналом СС-ПРЩ процесс ДИР;

у ИСП, то он прекращает свое существование и оповещает об этом (сигналом СС-ПРЩ) процесс ДИР.

Во всех случаях ДИР и РДТ переходят в состояния Д1 и Р1 соответственно. Если ИСП прекращает свое существование под воздействием сигнала СМР, то он не посылает оповещения об этом процессу ДИР.

Как видим, мы ввели новый сигнал СМР (смерть), который ДИР и РДТ посылают процессу ИСП. Этот сигнал изображен на рис. .

  1. Для описания функционирования процессов ДИР, РДТ и ИСП мы введем

пять логических переменных: инцсдн, трсдн. сс, тип, фс. Их значения следующие:

истина, данный С-элемент является инициатором СС;

инцсдн — ложь, данный С-элемент является ответчиком;

истина, для обеспечения СС можно использовать

имеющееся ТС;

трсдн – ложь,для обеспечения СС надо создать ТС:

истина, блок ЗС поступил к РДТ;

тип – ложь, блок ЗС поступил к ИСП;

истина, СС еще не установлено;

фс – ложь, СС уже установлено;

истина, СС возможно;

сс – ложь, СС невозможно.

5. Сигналы и команда CREATEпередают следующие параметры:

ПРЖД: инцсдн, трсдн, парм-сдн, SENDER, ид-т-сдн;

РДТ-ДИР: тип, OFFSPRING, ид-т-сдн, парм-сдн;

CREATE: инцсдн, трсдн, парм-сдн, ДИР-ид, П-ид, Т-ид, т-сдн.

6. Состояния процессов ДИР и РДТ, приведенные в табл. и 10.4, очевидны из их названий.

7. В табл. среди входных событий указан сигнал ДТМ, поступающий от таймера. Он нужен для предотвращения «зависания» процесса ДИР в том случае, когда процесс ДИР не будет оповещен о наступлении какой-то ошибки.

8. Как указывалось, в табл. и указаны номера переходов, а сами переходы описаны в табл. . В ней в первом столбце указан номер перехода, во втором столбце—проверяемые условия, в следующем— соответствующее выполняемое действие (если условие удовлетворено), затем указан выходной сигнал и, наконец, в последнем столбце—результирующее состояние, в которое входит процесс по завершении перехода. В некоторых случаях выполняемое действие занимает не одну, а две строки (например, для перехода № 3, при условии «тип&СО»). Это легко установить по наличию или отсутствию в строке результирующего состояния. Пробелы в столбцах 2-4 означают, что соответствующее средство в данном переходе не используется. Через, например, ТБЛ-СС (1,2,5)+ обозначено заполнение (для текущего СО столбцов 1,2,5 в ТБЛ-СС (и аналогично для ТБЛ-ТС). Через (ТБЛ-СС) -обозначено вычеркивание из ТБС-СС строки, соответствующей текущему СС. Через ТБЛ-ТС (3)± 1 обозначено прибавление /вычитание единицы в счетчике ТБЛ-ТС. Наконец, запись РДТ-ДИР (+,+,-,-) означает, Что вместе с сигналом РДТ-ДИР первые два параметра должны быть переданы, а последующие два—нет.

9. Диаграммы процессов ДИР и РДТ приведены на рис. и соответственно.

Таблица .

Номер перехода

Проверяемое условие

Выполняемое действие

Выходной сигнал

Состояние

1

2

3

4

5

1

1СС

Д1

СС&1 трсдн

инцсдн:= True; SET ДТМ,

ТБЛ-СС(1,2,5)+

ПРЖД(+,+,+, +.-)

Д2

ССА тродн

инцсдн:= True; SET ДТМ,

ТБЛ-СС(1,2,5)+

ПРЖД (+.+.+, +,+)

Д2

2

1СС

Д1

СС

инцсдн:= False;трсдн:=False; ТБЛ-СС(1,2.5,)+;SЕТ ДТМ

Д2

3

типАСС

Инцсдн:= False;трсдн:= Тгue;TBЛ-CC(1,2,4,5.)+;SETДТМ

ПРЖД(+,+,+,-. -,+)

Д2

1 тип v1CC

Д1

4

тип

СМР

Д1

1тип &

трсдн

ТБЛ-СС(1,2,5.)+

ДЗ

1 тип &

трсдн

ТБЛ-СС(1.2,4.5.)+

Д4

5

ТБЛ-СС(4)+; если в ТБЛ-ТС этого ид-т-снд нет, то

ТБЛ-ТС(1,2,)+

Д4

6

ТБЛ-СС(6)+; ТБЛ-ТС(3)+1, RESETДТМ

Д1

7

фс

ТБЛ-СС–, RESETДТМ

Д1

1фс

ТБЛ-СС—, ТБЛ-ТС(З) — 1, RESETДТМ

Д1

8

ТБЛ-СС—; RESETДТМ

Д1

9

ТБЛ-СС—; RESETДТМ

СМР

Д1

10

тип:=False; формирование фактических параметров оператораCREATE; выдачаCREATE

рдт-дир(+,+,

,-,-)

Р1

11

Тип:=Тгuе

РДТ-ДИР(+,-,

+,+)

Р2

1

2

3

4

5

12

СС-ПРЩ; СМР

Р1

Рис.