Перемещение транзактов. Оператор TEST

Стандартные числовые атрибуты

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

Общее название СЧА

Системные СЧА

AС1 – абсолютное модельное время;

С1 – относительное модельное время;

TG1 – значение счетчика завершений

СЧА транзакта

M1 – время нахождения в системе,

MP1 – транзитное время

PR – приоритет.

Pимя – значение параметра имя

СЧА устройства

Fимя – состояние занятости устройства имя

1 – занято, 0 – свободно

FVимя – состояние доступности устройства имя

1 – доступно, 0 – недоступно


СЧА многоканального устройства

Rимя – число свободных каналов

Sимя – число занятых каналов

SEимя – состояние незанятости устройства имя

1 – свободно, 0 – иначе

SFимя – состояние занятости устройства имя

1 – занято, 0 – иначе

СЧА очереди

Qимя – текущая длина очереди имя

QMимя – максимальная длина очереди имя

QTимя – среднее время пребывания в очереди имя

СЧА логического переключателя

LSимя – состояние переключателя имя

1 – установлен, 0 – сброшен

СЧА генератора случайных чисел

GNимя – случайное целое число от 0 до 999 при

при использовании в качестве аргумента

функции – дробное число от 0 до 0.999999


СЧА функции

FNимя – значение функции имя

СЧА переменной

Vимя – значение арифметической переменной имя

BVимя – значение логической переменной имя

СЧА сохраняемой величины

Xимя – значение сохраняемой величины имя

имя - имя объекта;

номер;

$символьное имя.


служит для задержки или изменения маршрутов транзактов в зависимости от соотношения двух СЧА

TEST X A,B,C

A, B ‑ сравниваемые СЧА.

X ‑ условие сравнения СЧА

o L (меньше);

o LE (меньше или равно);

o E (равно);

o NE (не равно);

o GE (больше или равно);

o G (больше).

Если проверяемое условие выполняется, то TEST пропускает транзакт в следующий блок. Если же это условие не выполняется, то транзакт переходит к блоку, указанному в поле C, а если оно пусто, то задерживается перед блоком TEST.

Например

TEST LE P$TIME,C1

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

TEST L Q$LINE,5, OUT

направляет транзакты в блок с именем OUT, если текущая длина очереди LINE больше либо равна 5.

Пример 4

Управляющая ЭВМ обрабатывает пакеты сигналов, поступающие с контроллера каждые 20 мсек. Время обработки равномерно распределено в интервале от 10 до 40 мсек. Максимальное количество пакетов, которое можно сохранить в ожидании обработки – 2, максимальное время ожидания пакетом начала обработки – 40 мсек.

нет место в буфере?

да

Буфер

нет

ЭВМ свободна? время превышено?

нет

да

да

ЭВМ


transit TABLE M1,8,4,20

GENERATE 20

TEST L Q$wait,2,out1

QUEUE wait

again GATE U proc,work

TEST LE M1,40,out2

ADVANCE 1

TRANSFER,again

work SEIZE proc

DEPART wait

ADVANCE 25,15

RELEASE proc

TABULATE transit

TERMINATE 1

out1 TERMINATE

out2 DEPART wait

TERMINATE


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: