Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Стандартные числовые атрибуты СЧА
При моделировании сложных систем возникает необходимость автоматически регистрировать и корректировать некоторую информацию. Иногда возникает необходимость учета различных состояний приборов, устройств, очередей и т.д. Все рассмотренные объекты требуют определенного числа ячеек памяти, в которых во время моделирования хранятся так называемые атрибуты объекта. К большинству из этих атрибутов может обращаться только управляющая программа, однако к некоторым атрибутам может обращаться и пользователь. Такие атрибуты называются стандартными числовыми атрибутами (СЧА). Каждый объект в GPSS имеет свой набор СЧА. Кроме СЧА объектов, существуют еще системные числовые атрибуты, к которым пользователь может обращаться в модели, но не может изменить их значения. Стандартные числовые атрибуты могут использоваться в качестве операндов практически в любом блоке. Атрибуты транзакта: Pj – значение параметра j текущего транзакта, обрабатываемый в данный момент времени; MPj – промежуточное время прохождения транзактом участка программы, записываемое в ‘j-ом’ параметре; PR – приоритет транзакта, обрабатываемого управляющей программой в данный момент времени; M1 – время прохождения транзактом участка модели; MBj – флаг синхронизации: 1, если транзакт в блоке j принадлежит тому же семейству, что и текущий транзакт; 0 – в противном случае. Атрибуты блоков: Nj - общее число транзактов, которое должно войти в j-й блок; Wj - счетчик задержанных в j-ом блоке транзактов. Атрибуты многоканальных устройств: Sj – содержание j - го многоканального устройства; Rj- число свободных единиц j-го многоканального устройства. Атрибуты одноканального устройства: Fj – текущее состояние j-го устройства; FRj – коэффициент использования j-го устройства одним транзактом; FCj – общее число входов в устройство j; FTj – среднее время использования устройства транзактами. Атрибуты очереди: Qj – текущая длина очереди; QAj – среднее значение длины очереди; QTj – среднее время пребывания в очереди. Во всех случаях j – номер объекта, если j – имя, то перед ним ставится знак $. Рассмотрим переход транзакта в блок, отличный от последующего Блок TRANSFER (передать) предназначен для передачи входящего в него транзакта в любой другой блок модели.
Блок имеет следующий формат:
TRANSFER [A], [B], [C], [D],
здесь А – режим выбора блока, которому должен быть передан транзакт. Существуют следующие режимы работы блока: - Безусловный (пробел); - Статистический (.); - Both; - ALL и другие. Безусловный режим выбора. Если операнд А опущен, то входящий в блок TRANSFER транзакт переходит к блоку, указанному в поле B.
Например, TRANSFER, B1
Режим BOTH. Транзакт пытается войти в блок, указанный в поле B. Если не может войти в этот блок, то пытается войти в блок, указанный в поле С. Если транзакт не может перейти и к этому блоку, то опять пытается войти в блок, указанный в В, и т.д., пока не сможет войти в один из блоков.
TRANSFER BOTH TR1, TR2 . . . TR1 SEIZE 1 TR2 SEIZE 2
Статистический режим выбора. В этом режиме в поле А записывается точка (.), после неё следует трехзначное число. Это число показывает, какой процент, входящих в блок транзактов, следует направить к блоку, указанному в поле С. Остальные транзакты направляются к блоку, указанному в поле В. Если операнд В опущен, то транзакт направляется к следующему блоку. Например, TRANSFER. 700, BLK1, BLK2 0.700 будут пытаться войти в BLK2, остальные 0.300 в BLK1. 0.700 – интерпретируется как вероятность.
|