ВУЗ:
Составители:
38
Блок FAVAIL
18
делает доступными устройства, указанные как номер или диапазон
номеров устройств в поле А. Блок FAVAIL отменяет все режимы, заданные блоком
FUNAVAIL для данных устройств.
Рассмотрим пример использования блоков FUNAVAIL и FAVAIL:
FUNAVAIL 1—15
ADVANCE 30
FAVAIL 1—l0
ADVANCE 15
FAVAIL 11—15
(т. е. недоступные устройства с 1-го по 15-е становятся доступными: через 30 единиц
времени — устройства с 1-го 10-е, а через 45 единиц
времени — устройства с 11-го по 15-
е).
Часто два и более приборов работают рядом. GPSS позволяет моделировать
однородные параллельные приборы с помощью специальных средств, называемых
многоканальным устройством, или памятями. Для введения в программу памяти
требуется описать ее картой STORAGE, а изменение состояния памяти производится
блоками ENTER, LEAVE, SUNAVAIL, SAVAIL. Блок ENTER моделирует событие
«занятие одного из группы параллельно
работающих приборов», LEAVE
19
–
«освобождение параллельно работающего прибора».
Поле А блока ENTER интерпретируется как номер памяти, поле В — указывает число
единиц памяти, занимаемых транзактом при входе в блок. При выходе транзактов из
блока ENTER никаких изменений в содержимом памяти не происходит.
Если поле В пустое, то число единиц памяти полагает равным 1. В этом поле может
быть
записан 0 и тогда содержимое памяти увеличится на 0 единиц. Если в памяти нет
достаточного числа свободных единиц, чтобы удовлетворить запрос транзакта, то этот
транзакт не может быть обслужен блоком ENTER. Если для последующего транзакта
число единиц памяти достаточно, он входит в память раньше первого.
Поле А определяет номер памяти, а поле В —
число единиц, которые надлежит
освободить при входе транзакта в блок LEAVE. Не всегда освобождается такое же число
единиц памяти,
как было занято. Транзакт, освобождающий память, не обязательно
должен был ее занимать. Однако необходимо, чтобы в сумме освобождалось столько
единиц памяти, сколько было занято (иначе содержимое памяти будет возрастать и после
ее заполнения в системе наступит насыщение), и чтобы содержимое памяти не стало
отрицательным (т. е. не освобождалось больше единиц памяти, чем
было занято). При
выполнении блока LEAVE задержки не возникают. Аналогично тому, как в блоке ENTER
транзакт может занять 0 единиц памяти, в блоке LEAVE он может освободить 0 единиц.
Пример 8. Построить программу модели многоканальной системы массового
обслуживания с очередью. В парикмахерской три мастера, очередь к ним общая. Клиенты
приходят с интервалом (10 ± 5) минут, обслуживание парикмахером клиента
занимает (25
± 10) минут. Смоделировать работу парикмахерской в течение одного рабочего дня (8
часов).
SIMULATE Начало моделирования
PARIK STORAGE 3 Три парикмахера
GENERATE 10,5 Приход клиентов
QUEUE OCHER Занятие очереди
ENTER PARIK,1 Начало стрижки
DEPART OCHER Освобождение очереди
ADVANCE 25,10 Стрижка
18
AVAIL (сделать доступным)
19
LEAVE - выйти
Блок FAVAIL18 делает доступными устройства, указанные как номер или диапазон номеров устройств в поле А. Блок FAVAIL отменяет все режимы, заданные блоком FUNAVAIL для данных устройств. Рассмотрим пример использования блоков FUNAVAIL и FAVAIL: FUNAVAIL 1—15 ADVANCE 30 FAVAIL 1—l0 ADVANCE 15 FAVAIL 11—15 (т. е. недоступные устройства с 1-го по 15-е становятся доступными: через 30 единиц времени — устройства с 1-го 10-е, а через 45 единиц времени — устройства с 11-го по 15- е). Часто два и более приборов работают рядом. GPSS позволяет моделировать однородные параллельные приборы с помощью специальных средств, называемых многоканальным устройством, или памятями. Для введения в программу памяти требуется описать ее картой STORAGE, а изменение состояния памяти производится блоками ENTER, LEAVE, SUNAVAIL, SAVAIL. Блок ENTER моделирует событие «занятие одного из группы параллельно работающих приборов», LEAVE19 – «освобождение параллельно работающего прибора». Поле А блока ENTER интерпретируется как номер памяти, поле В — указывает число единиц памяти, занимаемых транзактом при входе в блок. При выходе транзактов из блока ENTER никаких изменений в содержимом памяти не происходит. Если поле В пустое, то число единиц памяти полагает равным 1. В этом поле может быть записан 0 и тогда содержимое памяти увеличится на 0 единиц. Если в памяти нет достаточного числа свободных единиц, чтобы удовлетворить запрос транзакта, то этот транзакт не может быть обслужен блоком ENTER. Если для последующего транзакта число единиц памяти достаточно, он входит в память раньше первого. Поле А определяет номер памяти, а поле В — число единиц, которые надлежит освободить при входе транзакта в блок LEAVE. Не всегда освобождается такое же число единиц памяти, как было занято. Транзакт, освобождающий память, не обязательно должен был ее занимать. Однако необходимо, чтобы в сумме освобождалось столько единиц памяти, сколько было занято (иначе содержимое памяти будет возрастать и после ее заполнения в системе наступит насыщение), и чтобы содержимое памяти не стало отрицательным (т. е. не освобождалось больше единиц памяти, чем было занято). При выполнении блока LEAVE задержки не возникают. Аналогично тому, как в блоке ENTER транзакт может занять 0 единиц памяти, в блоке LEAVE он может освободить 0 единиц. Пример 8. Построить программу модели многоканальной системы массового обслуживания с очередью. В парикмахерской три мастера, очередь к ним общая. Клиенты приходят с интервалом (10 ± 5) минут, обслуживание парикмахером клиента занимает (25 ± 10) минут. Смоделировать работу парикмахерской в течение одного рабочего дня (8 часов). SIMULATE Начало моделирования PARIK STORAGE 3 Три парикмахера GENERATE 10,5 Приход клиентов QUEUE OCHER Занятие очереди ENTER PARIK,1 Начало стрижки DEPART OCHER Освобождение очереди ADVANCE 25,10 Стрижка 18 AVAIL (сделать доступным) 19 LEAVE - выйти 38
Страницы
- « первая
- ‹ предыдущая
- …
- 36
- 37
- 38
- 39
- 40
- …
- следующая ›
- последняя »