Краткое практическое руководство по GPSS

         

Использование в блоках ЕNТЕR и LEAVE операнда В


В блоках ЕNТЕR и LЕАVЕ можно использовать операнд В. На рис.22.2 дано повторение рис. 22.1 с добавлением использования операнда В. Как показано на рисунке, операнд В задает число приборов, которое должно быть занято в блоке ЕNТЕR или должно быть освобождено в блоке LЕАVЕ. Значением операнда В по умолчанию является 1, что означает, что занят только один прибор.


Рис.22.2. Блоки ENTER и LEAVE с операндами А и В:

Блоки ENTER и LEAVE с операндами А и В:
Операнд Значение Значение или результат по умолчанию
А Имя (символическое или числовое) многоканального устройства Ошибка
В Число занимаемых приборов 1

Представляется вполне естественным, что допускается занятие нескольких приборов единственным транзактом в блоке ЕNТЕR (и аналогично освобождение нескольких приборов единственным транзактом в блоке LЕАVЕ). Предположим, что транзакт моделирует корабль, а многоканальное устройство моделирует причал в порту. В зависимости от размера корабль может потребовать использования нескольких причалов.

GPSS по отношению к блоку ЕNТЕR реализует подход "все или ничего". Транзакт не может занимать приборы один за другим, пока не займет требуемое число приборов. Когда транзакт пытается войти в блок ЕNТЕR, интерпретатор проверяет, больше или равна доступная емкость многоканального устройства значению операнда В. Если результат проверки отрицателен, транзакт остается в том блоке, где он находился, и позднее снова будет пытаться войти в блок ЕNТЕR.

Рассмотрим теперь влияние параметра В на статистические данные, собираемые интерпретатором относительно многоканальных устройств. Когда транзакт входит в блок ЕNТЕR, для которого используется операнд В, интерпретатор проделывает следующие действия:

  1. "счетчик входов" многоканального устройства увеличивается на значение операнда В;
  2. "текущее содержимое" многоканального устройства также увеличивается на значение операнда В;
  3. "доступная емкость" многоканального устройства уменьшается на значение операнда В.

Подобным образом, при использовании операнда В в блоке LЕАVЕ и входе транзакта в этот блок выполняются следующие действия:

  1. "текущее содержимое" многоканального устройства уменьшается на значение операнда В;
  2. "доступная емкость" многоканального устройства увеличивается на значение операнда В.
Независимо от того, используется или нет значение операнда В, отличное от единицы в блоках ЕNТЕR и LЕАVЕ, надо помнить,что статистика по многоканальным устройствам собирается интерпретатором относительно приборов, а не транзактов.Следовательно, "число входов" является полным числом приборов, занимаемых в течение моделирования (некоторые,а может быть и все они занимались не один раз); "среднее содержимое" - это число приборов, занятых в настоящее время, а "максимальное содержимое" - это максимальное число приборов, находившихся в занятом состоянии в какой-то момент времени.Соотношения "один к одному" между приборами и транзактами,использующими или нет приборы, выполняются только тогда, когда операнд В в блоках ЕNТЕR и LЕАVЕ равен единице.

Содержание раздела