Блоки, обеспечивающие копирование и синхронизацию перемещения транзактов по модели в GPSS
SPLIT A, B, C, D создает А копий текущего транзакта. Копии входят в блок, указанный в поле В, а текущий транзакт продолжает движение в следующий блок. Номера создаваемых копий транзактов записываются в параметры, номера которых указываются в поле С.
Нумерация осуществляется таким образом: порядковый номер исходного транзакта после прохождения блока SPLIT увеличивается на 1, порядковый номер первой копии станет на 1 больше номера исходного транзакта, порядковый номер следующей копии станет на 1 больше порядкового номера предыдущей копии транзакта. В поле D указывается число параметров у транзактов-копий. Если поле D не задано, то число и тип параметров у копий такие же, как и у исходного транзакта.
Примеры
SPLIT 4, THE
Создает 4 копии транзакта, которые посылаются в блок по метке ТНЕ, а текущий транзакт продолжает движение в следующий блок.
SPLIT 3,P$1,2,4
Создает 3 копии транзакта, которые поступают на блоки, указанные в первом параметре, номера транзактов-копий указываются во втором параметре, каждая копия будет иметь 4 параметра.
ASSEMBLE A объединяет транзакты одного семейства, накапливая и задерживая транзакты, являющиеся членами семейства, до тех пор пока их число не станет равным А. Когда последний транзакт войдет в блок, А-1 транзактов будет удалено из модели, кроме первого, который и продолжит движение.
GATHER A накапливает и задерживает транзакты, являющиеся членами семейства, до тех пор пока их число не станет равным А. Когда последний транзакт войдет в блок, все они одновременно (по времени моделирования ) выходят из него в том порядке, в котором поступили.
МАТСН А синхронизирует два транзакта одного семейства: первый транзакт, достигнув блока MATCH, задерживается в нем до тех пор, пока другой транзакт данного семейства не достигнет сопряженного блока MATCH, указанного в поле А. Во время задержки устанавливается индикатор синхронизации. Он сбрасывается, когда транзакт того же семейства входит в соответствующий блок MATCH.
Пример
АА МАТСН ВВ
……
ВВ МАТСН АА
ТRACE и UNTRACE – блоки без операндов – осуществляют трассировку, т.е. вызывают фиксацию в файле результатов каждого шага движения транзактов по блокам модели, начиная с блока TRACE и заканчивая блоком UNTRACE.
Их применение полезно при отладке моделей с разветвлениями и с параллельными процессами.
- Блоки, определяющие направление перемещения транзактов по модели в GPSS
- Блоки, влияющие на значения параметров транзактов в GPSS
- Алгоритм перемещения транзактов – алгоритм моделирования в системе gpss
- Моделирование и синхронизация параллельных процессов
- Таблицы в GPSS
- Очереди в GPSS
- Особенности построения моделей дискретных процессов на языке GPSS
- Объекты системы моделирования и средства их реализации. Транзакты
- Устройства в GPSS: FACILITY
- Логические ключи в GPSS
- Память в GPSS
- Структура программы на языке GPSS
- Ячейки в GPSS
- Моделирование процессов, связанных по устройству обслуживания
- Язык и система моделирования GPSS
- Работа с системой моделирования GPSS/PC
- Функции и переменные в GPSS