- •Введение
- •Лабораторная работа № 1 ознакомление c интерфейсом пользователя системы gpssw
- •1. Редактирование в среде gpssw
- •2. Блоки (операторы) gpss-модели
- •4. Лабораторное задание
- •Лабораторная работа № 2 Практическая работа в gpssw. Первая программа. Лабораторное задание
- •Лабораторная работа № 3 Изучение средств наблюдения за процессом моделирования в среде gpssw Лабораторное задание
- •Лабораторная работа № 4 Изучение средств отладки моделей в среде gpssw Отладка модели
- •Лабораторное задание
- •Лабораторная работа № 5 Изучение средств отображения и обработки результатов моделирования в среде gpssw Лабораторное задание
- •Лабораторная работа № 6
- •Содержание отчета
- •Методические указания к выполнению работы
- •Лабораторная работа № 7
- •Содержание отчета
- •Методические указания к выполнению работы
- •Лабораторная работа № 8
- •Содержание отчета
- •Методические указания к выполнению работы
- •Лабораторная работа № 9 моделирование сетей массового обслуживания
- •Приложение 1.Содержимое окон Окно блоков
- •Окно устройств
- •Окно многоканальных устройств
- •Окно очередей
- •Окно таблиц
- •Окно графиков
- •Окно параметров сча
- •Окно отчета
- •Приложение 2.Системные числовые атрибуты (сча)
- •Список литературы
Лабораторное задание
Упражнение 1. Прогон модели с наблюдением окна блоков.
Загрузите программу GPSSW.
Введите следующую GPSS-модель:
GENERATE 100,50
QUEUE LINE
SEIZE SYSTEM
DEPART LINE
ADVANCE 80,40
RELEASE SYSTEM
TERMINATE 1
Оттранслируйте модель без ошибок.
Откройте окно блоков (Window/Simulation Window/Blocks Window).
Поскольку в нашей модели используется устройство SYSTEM, откройте окно устройств (Window/Simulation Window/Facilites Window).
Запустите процесс моделирования командой START 500,NP для прогона 500 транзактов без создания стандартного отчета (операнд NP). Понаблюдайте за окнами блоков и устройств.
По окончании прогона введите оператор CLEAR для очистки модели.
Упражнение 2. Прерывание моделирования по различным условиям.
Введите условие остановки в указанном блоке. Для этого в окне блоков BLOCKS ENTITIES имеются следующие кнопки:
- Place – разместить условие остановки любого транзакта в указанном (щелчком мыши) блоке;
- Remove – удалить условие остановки в указанном блоке.
Разместите условие остановки на первом блоке GENERATE.
Введите Start 1000, NP. В окне JOURNAL появится сообщение об остановке моделирования при входе сообщения с соответствующим номером (XN: номер) в соответствующий блок и значение модельного (системного) времени, в котором происходит функционирование моделируемой системы.
Удалите условие останова кнопкой Remove.
Условие остановки может быть привязано как к номеру транзакта, так и к номеру блока. Для этого в пункте меню Command/Custom введите STOP 5,4. Очистите статистику командой Clear и выполните Start 1,NP. Вы увидите в окне блоков остановившийся транзакт №5 в блоке №4. Соответствующее сообщение об этом Вы увидите в окне JOURNAL.
Снимите условие останова, выполнив Window/Simulation Snapshot/Users Stop и в окне Stop Conditions удалив соответствующую запись. Очистите статистику командой CLEAR.
Упражнение 3. Просмотр параметра транзакта в окне списка текущих событий.
Присвоим параметру активного требования (транзакта) имя Cena со значением 490.8. Для этого выполним Command/Custom и в окне Simulation Command введем Assign Сena, 490.8.
Для просмотра всех параметров данного требования можно открыть окно списка текущих событий. Для этого выполним Window/Simulation Snapshot (снимок моделирования)/CEC Snapshot. Щелкним по по всем пиктограммам со знаком +.
Теперь закроем окно списка текущих событий. Можно таким же образом просмотреть значение параметра активного транзакта с помощью команды Show. Убедимся в этом: выполните Command/SHOW и в окне SHOW Command введем SHOW P$Cena. Запись P$Cena читается как значение параметра с именем Cena. Выполним OK. Значение параметра P$Cena появится в окне JOURNAL и в строке состояния в нижней части главного окна. Если бы в модели в процессе моделирования значение данного параметра менялось бы, мы бы могли наблюдать это изменение в этой строке.
Завершите моделирование данной модели, закройте все окна без сохранения.
Упражнение 4. Просмотр содержимого списка пользователя.
Введите следующую GPSS-модель, описание которой приведено в приложении:
GENERATE 100,50
QUEUE LINE
GATE NU SYSTEM,WAIT
ENT1 SEIZE SYSTEM
DEPART LINE
ADVANCE 110,40
PRIORITY PR,BU
RELEASE SYSTEM
UNLINK BUFER,ENT1,1
TERMINATE 1
WAIT LINK BUFER,FIFO
Выполните трансляцию модели.
“Запишите” команду CONTINUE на клавишу F2. Для этого выполните Edit/Setting/Function Keys и в окно для клавиши F2 введите CONTINUE.
Откройте окно блоков и окно списка пользователя – Window/Simulation Snapshot/Userchains Snapshot и убедитесь, что список пуст.
Выполните START 500,NP и , наблюдая в окне блоков за количество накопленных транзактов в блоке LINK, дождитесь наличия там 7-10 транзактов. После этого остановите моделирование ( кнопка HALT), еще раз откройте список пользователя и обратите внимание на размещение транзактов в списке в порядке возрастания их номеров соответствии с дисциплиной FIFO, заданной в блоке LINK.
Очистите статистику (CLEAR), измените дисциплину очереди в блоке LINK на LIFO и выполните п.п.2-5. Обратите внимание на изменение порядка размещения транзактов в очереди.
Завершите сеанс работы с моделью (без сохранения) и выйдите из GPSSW.
Оформите отчет.
