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



             

Объяснение рис. 13.6. Состояния цепей - часть 5


Следовательно, второе выполнение фазы коррекции таймера завершается. Начинается следующее выполнение просмотра.

Второе выполнение фазы просмотра (от строки 5 к строке 6). Взяв транзакт 3 из начала строки 5 цепи текущих событий, интерпретатор двигает его в блок 1 (блок GENERATE), затем определяет, можно ли сразу переместить его в блок 2. Временно приостановив обработку транзакта 3, интерпретатор планирует приход следующего транзакта в блок 1 (GENERATE). В соответствии с интервалом прихода 17 (третье разыгранное значение из распределения 18 - 6 в табл. 13.1) транзакт 4 выбирается из вершины пассивного буфера и помещается в ЦБС; планируется его вход в блок 1 в момент времени 44. Она занимает в ЦБС положение между транзактом 1 и 2 в соответствии с принципом упорядочения в ЦБС.

Интерпретатор возобновляет движение транзакта 3, завершая его выполнением подпрограммы блока QUEUE. Здесь транзакт безуспешно пытается выйти из блока QUEUE и войти в блок SEIZE. Устройство JOE находится в состоянии "занято", поэтому вход в этот блок запрещен. Интерпретатор оставляет транзакт 3 в блоке QUEUE и в ЦТС, планируя войти в блок 3 "Как можно раньше". Далее интерпретатор должен продолжать работу со следующим транзактом в строке 5 цепи текущих событий. Но такого транзакта не существует. Поэтому следующим шагом является выполнение фазы коррекции таймера. Заметим, что таймер все равно надо было бы продвинуть, даже если бы цепь текущих событий была не пустой.

Отметим, что транзакты в строке 6 на рис.13.6 имеют смысл, указанный в табл. 13.4.

Таблица 13.4. Смысловые значения транзактов в цепях текущих и будущих событий (строка 6, рис. 13.6).

Смысловые значение транзактов в цепях текущих и будущих событий
ЦепьНомер транзактаРаспределение времени обслуживания, мин
ЦТС3Второй клиент ждет в очереди
ЦБС1Первый клиент стрижется
ЦБС4Третий клиент идет в парикмахерскую
ЦБС2Тразакт-таймер

Третье выполнение фазы коррекции таймера (от строки 6 к строке 7). Интерпретатор продвигает значение модельного времени к 32 - времени движения транзакта (транзакт 1), стоящего первым в строке 6 цепи будущих событий.Далее он перемещает транзакт 1 в цепь текущих событий, где тот занимает место последнего элемента среди элементов того же приоритетного класса. Отметим, что в строке 7 в ЦТС транзакт 1 располагается за транзактом 3 (транзакт 3 уже стоит в цепи текущих событий в начале третьего выполнения фазы коррекции таймера).

Назад&nbsp|&nbspДалее

Главная Содержание главы 1



Содержание  Назад  Вперед