Принципы работы с моделью
Б2. Вновь введённые операторы
Операторы, связанные с микрокомандами, описаны выше. Также дано определение оператору, резервирующему пространство для кодирования первых данных - OPERCOL. В языке введён оператор LET для назначения числовых значений АМП, выполняющий функции аналогичные оператору EQU, имеющим формат:
< [ имя] LET &var.= expr. >
например LET &I=1
Операторы LIST - UNLIST начинают или прекращают выдачу данных с форматом:
< LIST(UNLIST) [A] >
Без операнда А выдаётся весь список, если у операнда значение ABS - печать кодируемого списка, CSECHO - для печати операторов управления, МАСХ - для печати строк макрокоманд.
Оператор REPORT служит для сигнализации о начале подготовки отчёта, не имеет операндов и ставится непосредственно перед оператором управления END.
Оператор SCIP (пропуск) служит для введения чистых строк для удобства чтения, формат:
< SCIP [n] > n - число строк (по умолчанию 1)
Оператор SYN похож на EQU, но позволяет присваивать символу в поле метки новое символьное имя, например JOE2 SYN JOE.
|
|
GPSS/H не имеет внутреннего редактора, поэтому модель набирается в любом внешнем редакторе в виде исходного текстового файла в ASCII-кoдax (называемым ‘source file name’), размещаемого затем в директории GPSS/H. Исходный файл содержит все компоненты модели, рассмотренные выше: операторы блоков, управления и описания. В отличие от ряда предыдущих версий, нумерация строк в модулях программы не производится. Символом * помечаются все строки внешних заголовков, модули программы при отсутствии заголовков также разделяются символом *. При компиляции модели каждая строка нумеруется автоматически. Комментарии в строках отделяются пробелами.
В качестве примера рассмотрим одно из заданий лабораторного практикума.
Задание.Моделирование вычислительной системы коллективного пользования (ВСКП).
Содержательное описание системы (исходные данные)
1. Вычислительная система имеет две разнотипные ЭВМ (ЭВМ-1 и ЭВМ-2), которые обслуживают сеть активных терминалов.
2. Задачи пользователя образуют пуассоновский поток с интенсивностью λ =0,2 зад/сек, а время выполнения заданий в ЭВМ имеет экспоненциальное распределение с математическим ожиданием = 8 сек. (ЭВМ-1) и = 12 сек. (ЭВМ-2).
3. Задачи пользователей выполняются в мультипрограммном режиме, причем область памяти каждой ЭВМ разделена на т = 10 блоков (одно задание занимает один блок памяти).
4. Если поступившее задание застает ЭВМ-1 занятой, то оно направляется в ЭВМ-2.
5. После выполнения в ЭВМ 25% всех заданий обслуживаются в АЦПУ, причем распечатка одного листинга занимает 12 8 сек.
|
|
Цель задания. Разработать GPSS-модель для анализа процесса функционирования ВС ВЦКП в течение одного часа. Исследовать время ожидания вывода на печать выполненных заданий в выходной очереди.
Осуществить три независимых прогона ИМ в течение одного часа модельного времени каждый (время моделирования для одного прогона равно 3600 сек). После каждого прогона выдавать на печать статистическую информацию в стандартном виде.
Структурная схема модели. Введем обозначения: И — источник заявок на обслуживание; Kl, К2, и КЗ — каналы обслуживания, представляющие процессоры ЭВМ-1, ЭВМ-2 и АЦПУ соответственно; H1 и Н2 — накопители, представляющие области памяти ЭВМ-1 и ЭВМ-2. Структурная схема модели изображена на рис.4.3.
Рис.4.3 Структурная схема модели
Программа модели.
* модель ВСКП, временная дискрета равняется 1 с.
SIMULATE
* описание памятей
STORAGE S1-S2,10
* описание таблиц
QTIME QTABLE ACPU,0,60,20
* моделирование процесса выполнения заданий
GENERATE RVEXPO (1,0.2),,, IP входной поток
GATE SNF 1,COMP2 выбор ЭВМ
* выполнение задания на ЭВМ-1
ENTER 1 занятие блока памяти ЭВМ-1
ASSIGN 1,1,,PB запоминается номер ЭВМ
SEIZE COMP1 занятие процессора
ADVANCE RVEXPO (1,8) выполнение задания
RELEASE COMP1 освобождение процессора
* направление заданий на АЦПУ
TRANSFER.250,NACPU, ACPU
* выполнение задания на ЭВМ-2
СОМР 2 ENTER 2
ASSIGN 1,2,,PB
SEIZE COMP2
ADVANCE RVEXPO (1,12)
RELEASE COMP2
* направление заданий на АЦПУ
TRANSFER.750,, NACPU
* работа на АЦПУ
ACPU QUEUE ACPU
SEIZE ACPU
DEPART ACPU
ADVANCE 12,8
RELEASE ACPU
* освобождение памяти соответствующей ЭВМ
NACPU LEAVE PB1
TERMINATE выход задания из системы
* задание времени моделирования
GENERATE 3600,,3600
TERMINATE 1
START 1 прогон1
CLEAR
START 1 прогон 2
CLEAR
START 1 прогон 3
END
Конец примера.
Программа управляется MS DOS от 3-ей и выше версий или в сеансе DOS при работе в Windows. Запуск осуществляется набором в командной строке
GPSSH < имя файла >ENTER,
Если файл записан в директории GPSSH, то расширение не пишется. После появления фирменной заставки и начала трансляции появляется сообщение
Pass 1 (with source listing)...
На этой фазе идёт чтение исходного файла, обнаружение ошибок и создание листинга. Следующее сообщение на экране имеет вид: Pass 2... На этой фазе при отсутствии ошибок идёт компиляция, распределение памяти и подготовка к моделированию, если ошибок нет появляется сообщение: Simulations begins.
Модель запускается автоматически.