Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Сбор статистики об ожидании. Блоки queue, depart.
Эти блоки обеспечивают в GPSS возможность автоматического сбора статистических данных, описывающих вынужденное ожидание, которое может происходить время от времени в различных точках модели. Система моделирования GPSS обеспечивает возможность сбора статистики c помощью такого средства, как регистратор очереди. При использовании регистратора очереди в тех точках модели, где число ресурсов ограничено, интерпретатор автоматически начинает собирать различную информацию об ожидании c помощью СЧА, А именно: 1) число входов транзактов в очередь; 2) количество транзактов, которые фактически присоединились к очереди и сразу ее покинули, т.е. имели время ожидания равное нулю; 3) максимальная длина очереди; 4) среднее число ожидавших транзактов; 5) среднее время ожидания тех транзактов, которым пришлось ждать. В модели может быть несколько регистраторов очередей, различающихся именами. Правила присвоения имен те же, что и для устройств. Разработчик вносит регистратор очереди в модель c помощью пары взаимодополняющих блоков: Таблица 4.7
При входе транзакта в блок QUEUE (СТАТЬ В ОЧЕРЕДЬ) выполняются четыре действия: 1) счетчик входов для данной очереди увеличивается на В; 2) длина очереди (счетчик текущего содержимого) для данной очереди увеличивается на В; 3) значение текущей длины очереди хранится в стандартном числовом атрибуте Q $<имя очереди>; 4) транзакт присоединяется к очереди c запоминаем ее имени и значения текущего модельного времени. Транзакт перестает быть элементом очереди только после того, как он переходит в блок DEPART (ПОКИНУТЬ ОЧЕРЕДЬ) соответствующей очереди. Когда это происходит, интерпретатор выполняет такие операции: 1) длина очереди соответствующей очереди уменьшается на В; 2) используя привязку к значению времени, определяет: является ли время, проведенное транзактом в очереди, нулевым; если да, то такой транзакт по определению является транзактом c нулевым пребыванием в очереди и одновременно изменяется счетчик нулевых вхождении,
3) ликвидируется «привязка» транзакта к очереди. Если в модели используются объекты типа «очередь», то в файле стандартной статистики будет представлена информация об этих объектах. В конце моделирования интерпретатор автоматически выдает статистические данные: значение счетчика входов, максимальное значение длины очереди, среднее значение длины очереди, текущее значение длины очереди в конце периода моделирования, среднее значение времени нахождения в очереди и т.д. 1. Когда транзакт входит в блок QUEUE, то ищется очередь c именем, определенным операндом А. При необходимости очередь создается. 2. Блок QUEUE не поддерживает список членов очереди, он только добавляет единицы к длине очереди. 3. Использование регистратора очереди необязательно. C eгo помощью интерпретатор собирает лишь статистику об ожидании. Если же регистратор не используется, то статистика не собирается, но везде, где должна возникать очередь, она возникает. Ожидание является следствием состояния устройства, А не следствием использования регистратора. Если в планы не входит обработка статистических данных об очередях, то лучше не собирать статистику – это сэкономит время, расходуемое на моделирование. 4. Один и тот же транзакт может одновременно увеличить длину нескольких очередей. 5. При выходе транзакта из очереди через блок DEPART транзакту не обязательно уменьшать длину очереди на ту же величину, на которую он увеличил ее при входе в блок QUEUE. Но в итоге число входов в очередь должно равняться числу выходов из нее.
Вопрос 36 Переход транзакций в блок, отличный от последующего. Блок TRANSFER (все режимы). В GPSS блок TRANSFER (ПЕРЕДАТЬ) может быть использован в девяти разных режимах. Рассмотрим три основных. Блок TRANSFER в режиме безусловной передачи. Его формат: TRANSFER , B Таблица 4.8
Позиция блока – это номер или метка блока. Так как операнд А не используется, то перед операндом В должна стоять запятая. В режиме безусловной передачи блок TRANSFER не может отказывать транзакту во входе. Кстати, если транзакт входит в блок, то он сразу же пытается войти в блок В.
Транслятор GPSS/PC не улавливает пропущенную запятую вместо операнда A (например, TRANSFER LAMD). На этапе трансляции метке LAMD присваивается числовое значение, и транзакт в этом случае направляется в блок c соответствующем номером. Статистический режим. В этом режиме осуществляется передача транзакта в один из двух блоков случайным образом. Формат блока: TRANSFER A,[B],C Таблица 4.9
При задании вероятности (операнд А) используется не более трех цифр, первый символ записи частоты «.» (десятичная точка), если используется действительное число, которое должно быть в пределах от 0 до 1,0 (например, 0,235). Если операнд – положительное целое число, то вероятность интерпретируется в долях тысячи. Пример 4.6 C частотой 0,667 транзакт переходит в блок c меткой LPRIB 1 и c частотой 0,333 – в блок c меткой LPRIB 2. Режим BOTH. Если в операнде А стоит зарезервированное слово BOTH, то блок TRANSFER работает в режиме BOTH. В этом режиме входящий транзакт сначала пытается перейти к блоку, указанному в операнде В. Если это сделать не удается, транзакт пытается перейти в блок, указанный в операнде C. Если транзакт не сможет перейти ни ктому, ни к другому блоку, то он остается в блоке TRANSFER и при каждом просмотре списка текущих событий, будет повторять в том же порядке попытки перехода до тех пор, пока не сможет выйти из блока TRANSFER. Пример 4.8 Транзакт сначала пытается перейти в блок c меткой LL 1. Если устройство PRI 1 занято, транзакт пытается войти в блок c меткой LL 2. Если транзакт не может войти и в этот блок (устройство PRI 2 также занято), он остается в списке текущих событий и повторяет эти попытки при каждом просмотре списка до тех пор, пока не выйдет из блока TRANSFER. 1. Не путайте метку блока SEIZE c именем соответствующего этому блоку устройства. 2. Если бы меткой LL 1 был помечен блок QUEUE, А не блок SEIZE, то все транзакты были бы направлены по метке LL 1, так как в отличие от блока SEIZE блок QUEUE всегда готов принять транзакты.
Вопрос 37
|
||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2021-01-08; просмотров: 213; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.221.187.207 (0.008 с.) |