Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
123.PDF
Скачиваний:
42
Добавлен:
24.02.2016
Размер:
1.24 Mб
Скачать

недостаточно,

то задание

встает в

очередь

и ждет повторного выделения

кванта времени.

 

 

 

 

 

 

 

 

 

 

 

 

 

r1

 

d1

 

 

d2

 

 

r2

 

d3

 

 

 

 

 

 

Q

 

 

 

 

 

 

 

 

 

 

A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

G

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b2

Рис 3.17. Пример описания вычислительной системы в виде Е-сети

На рисунке переходы, соответствующие определенным событиям в системе (dj), имеют следующие обозначения.:

d1 — постановка задания в очередь;

d2 — выполнение задания в течение одного кванта времени; d3 — анализ степени завершенности задания.

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

Отметим, что технология моделирования систем в виде Е-сетей весьма эффективно реализуется с помощью инструментаSIMULINK, входящего в состав пакета MATLAB.

3.8.3. Сетевая модель взаимодействующих параллельных процессов в операционной системе.

Рассмотрим

пример

применения

Е-сетей

для

имитацио

моделирования совокупности

взаимодействующих

параллельных процессов.

Эта совокупность «погружена» в

некоторую распределенную

операционную

систему

и

обеспечивает

 

формирование

потока

байтов,

ихданных

последовательную

 

передачу

по

линии связи

удаленному

абоненту, прием

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

1.Генерация потока байтов данных;

2.Передача байтов и сигналов уведомления по двум линиям связи;

118

3.Прием байтов (с формированием сигнала уведомления);

4.Отображение принятых байтов на терминале.

Посылка

сигналов

уведомления удаленным

абонентом

передающей

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

 

аппаратно

в

ряде

существующих

микропроцессорных

контроллер,

предназначенных

для асинхронной передачи данных по

последовательной

 

линии связи со скоростью в диапазоне от 50 до 19 200 бод.

 

 

 

 

Опишем более детально функции и протокол взаимодействия названных

 

четырех процессов. Процесс генерации формирует за определенное время

 

очередной байт данных и подготавливает его к передаче удаленному абоненту.

 

 

Процесс передачи начинается только после получения сигнала уведомления от

 

 

удаленного

абонента

о

завершении

им

приема

предыдущего.

б

Одновременно

с

началом

передачи

байта

может

начаться

генера

следующего байта, которая занимает гораздо меньше времени, чем передача байта по линии связи.

Байт данных, посланный удаленному абоненту, после прохождения по

линии связи временно запоминается в буферном регистре абонента. Прием

байта завершается процессом приема в момент извлечения байта из буферного

регистра, а это происходит после окончания вывода ранее принятого байта на

терминал с помощью процесса отображения. Вслед за тем процесс приема

формирует сигнал уведомления и направляет его по другой линии связи пере-

дающей стороне.

 

 

 

 

 

 

 

 

 

 

 

С этого момента принятый байт обрабатывается с помощью процесса

отображения, который проверяет сначала готовность терминала к восприятию

нового байта и в случае готовности обеспечивает вывод байта на терминал.

Затем процесс отображения сообщает процессу приема о том, что может быть

принят следующий байт. Получив это сообщение, процесс

приема

может

извлечь из буферного регистра очередной байт, если он уже был передан. Далее

описанная совокупность действий повторяется.

 

 

 

 

 

 

На рис. 3.18 приведена

структура

сетевой

модели описанной системы

взаимодействующих процессов. Для облегчения понимания модель условно

разделена пунктирными линиями на четыре поименованные секции, каждая из

которых соответствует одному из рассмотренных процессов. На этом рисунке

переходы

обозначены

целыми

числами

1от до 17,

простые

позиции —

идентификаторами S1, S2, ..., S22, единственная

 

позиция-очередь —

идентификатором Q1 и разрешающие позиции — идентификаторами R1 и R2. В

идентификаторах позиций буква характеризует тип

позиции(S — простая

позиция, Q — позиция-очередь

и R— разрешающая

позиция), а

цифровая

часть — уникальный номер позиции данного типа. Позиции Q1, S2, Sll, S19, S22

в исходном состоянии модели маркированы(содержат

по

одной

фишке

каждая, что обозначено точками внутри символов позиций).

S7

 

 

 

 

S1

2

 

 

S4

 

S6

 

 

 

8

 

S3

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Q1

1

 

 

 

 

5

6

 

S8

7

S9

119

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S2

 

4

 

S5

S12

S10

 

 

Рис 3.18. Структура сетевой модели системы взаимодействующих процессов

Процесс генерации потока байтов моделируется

переходами1 и 2 с

 

соответствующими входными и выходными позициями. Позиция

 

Q1,

 

совместно с переходом1 представляет собой

источник байтов

данных.

 

Фишка

в позиции S2 свидетельствует

о том, что линия связи для передачи

 

байта удаленному абоненту свободна, и

поэтому сразу

при появлении

 

фишки в позицииS1 (а это случится

после генерации нового )байта

 

срабатывает переход 2, так как к этому времени позиция S3 пуста.

 

 

 

Передача байта по линии связи моделируется переходом3, который

 

срабатывает при появлении фишки в позицииS3, в результате чего фишка

 

переместится в позициюS7. Это событие является признаком попадания

 

переданного байта в буферный регистр удаленного абонента.

 

 

 

 

Появление фишки в позицииS10

служит признаком того, что процесс

в

приема

получил

сообщение

от

процесса

отображения

о

предыдущего

байта

на

терминал. Так

как

позицияS11

занята,

то

 

срабатывает

сначала

переход8, а

потом

и

переход7,

вследствие

чего

 

фишка появится теперь в позицииS8, свидетельствуя о готовности процесса

120

приема извлечь байт из буферного регистра. Эта операция моделируется

 

срабатыванием

перехода 6.

Затем

немедленно

сработает

и

переход5, а

в

 

позициях S4, S5

появится по одной фишке. Наличие фишки в позицииS4

 

есть

признак

 

возникновения сигнала уведомления, который

по

другой

 

линии

 

связи,

моделируемой

переходом 4,

поступает

на

передающую

 

сторону и появляется там в форме фишки в позицииS2. Таким образом, для

 

процесса генерации возникает исходное состояние, с которого было начато

 

описание работы сетевой модели.

 

 

 

 

 

 

 

 

 

 

 

 

Из

позиции S5

фишка после срабатывания переходов9

и 10, будучи

 

размножена, переместится в позиции S11 и S13. Появление фишки в позиции

 

S11

означает,

что процесс приема вернулся в

 

исходное

состояние,

являющееся состоянием ожидания сообщения от процесса отображения.

 

 

Если в рассматриваемый момент времени позицияS15

содержит фишку

 

(в результате предшествующего срабатывания перехода17), то сработает

 

переход 11, фишка возникнет в позицииS14, а из нее после срабатывания

 

перехода

12

с

использованием

 

стандартной

разрешающей

процедуры,

ассоциированной с позициейR2, переместится в позициюS16. Траектория

 

дальнейшего движения фишки зависит от состояния позицииR2. Это

 

состояние равно 1 или 2 в зависимости от того, готов или не готов терминал

 

к восприятию очередного байта.

 

 

 

 

 

 

 

 

 

 

 

 

О

 

 

готовности

терминала

 

свидетельствует

наличие

фишки

 

позиции S19. Если

позиция S19

пуста,

то

фишка

из

позицииS16

после

 

срабатывания

перехода 13,

а

затем

и

перехода 12 вернется

в позицию

 

S16. Этот цикл перемещения моделирует опрос состояния терминала

процессором в реальной системе.

 

 

 

 

 

 

 

 

 

 

 

 

Если при очередном попадании фишки в позициюS16

позиция S19

 

окажется занятой, то из позицииS16 фишка поступит в позициюS18

и

 

сработает

переход 14,

моделирующий

вывод

байта на

терминал. Затем

 

фишка переместится в позициюS20

и после срабатывания перехода15

 

появится в позициях S22

и S21. Следовательно, для позиции S22

установится

 

исходное состояние.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Из

позиции S21

фишка

через

интервал«восстановления»

терминала,

 

моделируемый переходом 16, придет в позицию S19, установив тем самым

 

признак готовности терминала к восприятию очередного байта.

 

 

 

 

Описанный характер функционирования сетевой модели не отражается

 

во всех деталях на ее структурной схеме, приведенной на рис. 3.18. В

 

частности,

схема

не

содержит

информации

об

 

атрибутах,

фиш

нестандартных

 

процедурах

преобразования, процедурах

временной

 

задержки, а также о нестандартных разрешающих процедурах. Полностью

 

специфицировать сетевую модель можно, представив ее

на

языке, в

 

терминах которого были бы описаны все ее структурные, процедурные и

 

информационные аспекты.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

121

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]