Внутренняя организация GPSS

Система GPSS в целом как программный продукт состоит из ряда моду­лей, из которых только модуль управления (симулятор) находится постоянно в ОЗУ и осуществляет процесс имитации. Динамика функционирования симулятора основана фактически на схеме событий, при этом событием считается лю­бое изменение состояния моделируемой системы. Основной функцией симулятора является поддержание правильного хода часов системного времени и вы­яснение возможностей продвижения транзактов в программе модели. Симуля­тор оперирует с рядом информационных структур, основными из которых яв­ляются: список будущих событий (FEC), список текущих событий (СЕС), спи­сок прерываний, список задержанных транзактов и другие списки.

Работа симулятора разделяется на три основные фазы:

1) изменение значения системного времени

2) просмотр списка текущих событий;

3) движение сообщений.

Фаза «Изменение значения системного времени» (рис. 2.3) выполняется симулятором всегда, когда на текущий момент системного времени ни одно из активных сообщений, находящихся в СЕС, не может быть продвинуто в про­грамме модели и, кроме того, состояние системы не может быть изменено.

Выбирая первое сообщение, симулятор присваивает системному времени STIME время очередной передвижки этого сообщения TEV(H) в программе мо­дели и перемешает его в СЕС. Подобная процедура осуществляется для всех событий в FEC, время наступления которых равно TEV(H), т.е. текущему зна­чению системного времени. При этом после просмотра в FEC останутся собы­тия, время наступления которых больше STIME, т.е. события, наступающие в будущем.

Фаза "Просмотр списка текущих событий" (рис. 2.4). Установив флаг изменения состояния системы в ноль, симулятор в зависимости от значения ин­дикатора просмотра сообщения (транзакта) - 0 или 1 - решает вопрос: передать сообщение на третью фазу или нет. На фазу «Движение сообщений» (рис.2.5) передаются только активные сообщения, индикатор просмотра которых равен нулю. Пассивные сообщения находятся в состоянии задержки, например, по причине занятости имитируемого оборудования. Такие сообщения не попадут на третью фазу до тех пор, пока соответствующее оборудование не будет осво­бождено, т.е. пока не изменится состояние системы.

 

Рис. 2.3. Фаза "Изменение значения системного времени"

 

На фазе «Движение сообщений» активные сообщения симулятор пыта­ется продвинуть как можно дальше по программе модели. Если при этой пере­движке меняется состояние системы, все пассивные сообщения, находящиеся в СЕС и задержанные по той или иной причине, получают статус активных. Их индикаторы просмотра устанавливаются в "0". Если же при передвижке сооб­щений явно задана задержка, то сообщение перемещается в FEC. Таким обра­зом, на третьей фазе происходит передвижка активных сообщений, изменение состояния системы, пересмотр индикаторов сообщений и планирование буду­щих событий (перемещение в FEC).

 

Рис. 2.4. Фаза "Просмотр списка текущих событий"

 

 

 


 

Рис. 2.5. Фаза "Движение сообщений"

 

 

МОДЕЛИРОВАНИЕ СМО


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



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