- •Лабораторная работа №1 Изучение блоков динамической категории gpss/pc: generate, terminate, seize, release, advance
- •20 Transfer .7,chan1,chan2
- •20 Transfer both,chan1,chan2
- •20 Transfer all, chan1,chan4,4
- •Transfer pick,3,6
- •Assign 13,мет1
- •Loop 13, cycl5
- •Лабораторная работа №4 Системы с накопителями: блоки enter, leave, оператор storage. Управление потоком сообщений: блоки gate, test. Операторы variable, fvariable, initial.
- •Leave nak
- •Enter nak
- •20 Gate nu 1,facil2
- •Пример использования арифметических переменных
- •210 Funavail 1,re,facil2, ,re,facil3,re,facil4
- •230 Favail 1
- •510 Sunavail nak
- •530 Savail nak
- •20 Gate snv nak,facil2
- •110 Msavevalue mat2,1,1,c1
- •120 Msavevalue mat2,1,2,100
- •150 Msavevalue mat2-,2,2,2
- •Tabulate ttab1
- •135 Tabulate ttab2
- •70 Tabulate tab1
- •20 Gate snf nak1,exit
- •50 Link waz1,fifo,chan1
- •100 Unlink g waz1,chan1,1,13,16,que2
- •205 Link waz1,fifo
- •Лабораторная работа №9 Создание и управление групп транзактов gpss/pc: блоки join, remove, examine
- •120 Remove gr1,,p23,,,chan2
- •140 Remove gr1,,21
- •Examine gr17,,chan2
- •Examine gr1,6778,chan2
- •Листинг программы
- •Intlines storage 30
- •190 Transfer ,Breakoff
- •390 Terminate
- •570 Nonefree terminate
- •850 Terminate
- •Xact_group group_size retry
- •Лабораторная работа №11
- •Моделирование многофазных систем массового обслуживания
- •I теоретическая часть
- •1.1 Двухфазная система обслуживания
- •1.2 Трехфазная система обслуживания
- •II практическая часть
- •2.1 Моделирование в системе matlab
- •2.2 Моделирование в системе gpss/pc
- •Xact_group group_size retry
- •I теоретическая часть
- •II практическая часть
- •2.1 Моделирование в системе matlab
- •2.2 Моделирование в системе gpss/pc
- •Xact_group group_size retry
Лабораторная работа №4 Системы с накопителями: блоки enter, leave, оператор storage. Управление потоком сообщений: блоки gate, test. Операторы variable, fvariable, initial.
Цель работы: Моделирование систем с конечной емкостью накопителей. Управление потоком сообщений на основе заданных соотношений и логических условий. Изучение операторов VARIABLE, FVARIABLE, INITIAL.
В системах массового обслуживания часто задается ограниченная длина очереди или накопителя для требований, которые входят в систему, и ожидают своего обслуживания. Для моделирования систем с ограниченной очередью и параллельной обработкой требований в GPSS/PC используются блоки ENTER, LEAVE и оператор STORAGE. Эти блоки и оператор образуют группу памятей или группу описания накопителей, в которых собираются сообщения перед началом обслуживания в одном из устройств. В системе GPSS/PC памяти или накопители относятся к аппаратной категории, которые имеют визуализацию в виде специальных окон для наблюдения заполнения накопителей (в рабочей строке GPSS/PC следует набрать сочетание клавиш Alt+S).
Блок GATE проверяет состояние устройств, памятей, логических ключей. Блок TEST сравнивает два стандартных числовых атрибута по вычисляемому отношению. Оба блока управляют потоком сообщений (транзактов).
Пример 1. Входной поток требований поступает в накопитель с допустимой емкостью, равной 5 единицам, равномерно в течение 4±1 мин. Если требования после накопителя застают 1-е устройство заполненным, то они поступают на обработку во 2-е устройство. Время обработки для 1-го устройства равно 13±1 мин., для второго — 11±1 мин. Смоделировать процесс обработки требований в течение 3 часов (180 мин.).
Решение примера 1 приводится как программа 1.
Программа 1 |
SIMULATE nak STORAGE 5; Накопитель емкостью в 5 единиц 10 GENERATE 4,1 20 GATE SNF nak,FACIL2; Анализ состояния накопителя 30 ENTER nak 35 QUEUE 1 40 SEIZE 1; 1-е устройство 45 DEPART 1 50 LEAVE nak 60 ADVANCE 13,1 70 RELEASE 1 80 TERMINATE 100 FACIL2 SEIZE 2; 2-е устройство с меткой FACIL2 200 ADVANCE 11,1 300 RELEASE 2
*************************************************************************************** 500 GENERATE 180 600 TERMINATE 1 START 1 ;END |
В данном примере поступающие в систему требования сначала буферизуются в накопителе емкостью в 5 единиц, а потом пытаются попасть на обработку в 1-е устройство. Если первое устройство оказывается занятым, т.е. в нем осуществляется обслуживание, то очередное требование поступает на обслуживание во второе устройство. В программе используются следующие форматы записи оператора STORAGE, блоков ENTER, LEAVE и GATE.
Формат записи оператора STORAGE:
nak STORAGE 5
Описание оператора находится вне основного тела программы, без нумерации. Метка nak служит для обращения или ссылки на оператор. Операнд поля <A> определяет объем накопителя (у нас 5). Операнд поля <A> должен быть положительным целым. Когда транзакт пытается войти в блок ENTER, то запрос на емкость накопителя сравнивается с доступной емкостью. Если запрос может быть выполнен, то транзакт входит в блок ENTER, и текущая емкость накопителя уменьшается. Если запрос транзакта не может быть удовлетворен, то транзакт входит в список задержки многоканального устройства.
Формат записи блока ENTER:
