- раздел операторов, содержащий:
. последовательность блоков, т.е. последовательность функциональных
операторов, по сути представляющих собой программу моделирования;
START – управляющий оператор;
END – оператор окончания программы.
Функциональные операторы или блоки являются собственно языком описания модели. Каждый блок занимает одну строку GPSS-программы и имеет следующую структуру:
[метка] идентификатор_блока список_полей [; комментарий]
Поля в списке отделяются друг от друга запятой и имеют фиксированные позиции, назначение и количество полей зависит от типа блока. С точки зрения программиста блоки являются именами подпрограмм, а поля блока – параметрами подпрограммы.
Все блоки можно разделить на группы:
· блоки, отображающие работу объектов устройство, память, очередь, логический ключ, ячейка, переменная, таблица, функция, которые имитируют состав и структуру моделируемой системы и обеспечивают при моделировании сбор и обработку экспериментальных данных;
|
|
· блоки, влияющие на значения атрибутов и параметров транзактов;
· блоки, влияющие на изменение направления перемещения транзактов по модели;
· блоки, обеспечивающие копирование и синхронизацию перемещения транзактов по модели.
РАЗДЕЛ II. ОБЪЕКТЫ СИСТЕМЫ МОДЕЛИРОВАНИЯ
В языке GPSS применяются два класса объектов:
- статические объекты, которые объявляются в тексте программы: УСТРОЙСТВА (FACility), ПАМЯТИ (STOrage), ОЧЕРЕДИ (QUEue), ЛОГИЧЕСКИЕ КЛЮЧИ (LOGic), ПЕРЕМЕННЫЕ (VARiable), ЯЧЕЙКИ (полнословные FSV, полусловные HSV), ФУНКЦИИ (FUNction), ТАБЛИЦЫ (TABle);
- динамические, порождаемые в процессе моделирования: ТРАНЗАКТЫ (XAC).
Примечания.
1. В тексте GPSS-программы допускается сокращение идентификаторов до первых трех букв. В скобках приведены сокращения имен объектов, используемые в программе. Например, управляющий оператор REАLLOCATE, задающий максимальное количество объектов данного типа, которое может использоваться в конкретной программе, записывается так:
REA XAC,150,STO,3,LOG,2
2. Оператор REA располагается в первой строчке программы, до оператора
SIMULATE.
Далее рассматриваются типы объектов, используемые в GPSS.
2.1. ТРАНЗАКТЫ – ДИНАМИЧЕСКИЕ ОБЪЕКТЫ МОДЕЛИ
2.1.1. СОЗДАНИЕ И УДАЛЕНИЕ ТРАНЗАКТОВ
ТРАНЗАКТЫ (заявки, запросы, сообщения) - это динамические объекты, которые в процессе моделирования порождаются в блоке GENERATE, перемещаются по функциональным блокам модели, имитирующим структуру и алгоритм работы моделируемой системы, и удаляются из модели в блоке TERMINATE.
Правила порождения транзактов и свойства порождаемых транзактов задаются полями A,…,G блока GENERATE: