Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Osnovnaya_rabota.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
103.94 Кб
Скачать

1.5. Основные команды интерпретатора gpss/pc

@<имя файла> - загрузить исходный текст модели

SAVE <имя файла> - сохранить текст модели

DISPLAY[<строка N 1>],[< строка N 2>] - вывести на экран текст модели, начиная со строки N1 , до строки N 2.

DELETE [<строка N 1>],[<строка N 2>] - удалить из  программы текст, начиная со строки N1 , до строки N 2.

EDIT <номер строки> - отредактировать строку текста

CLEAR - сбросить всю статистику модели в ноль (включая таймеры абсолютного и относительного модельного времени), возвратить все транзакты в пассивный буфер .

END - завершить работу интерпретатора.

2. Практическая часть

2.1. Постановка задачи:

На решение в процессор поступает поток программ. Интервалы времени в потоке распределены по экспоненциальному закону со средним временем, распределенным равномерно от 20 до 40 единиц времени. Время решения программ распределено по равномерному закону в диапазоне от 15 до 55 единиц времени. При поступлении на процессор время обработки программы неизвестно (оно становится известно только после окончания ее обработки). Представить модель обработки программ, когда в первую очередь обрабатываются программы с меньшим временем решения.

Определить:

1. Написать модель на языке GPSS/PC-2.

2. Доказать, что заявленный в задании алгоритм обработки программ действует правильно (на примере обработки пакета программ).

3. С помощью модели определить основные характеристики времени реакции.

2.2. Алгоритм работы программы

Очередь

Да

Назначение

времени решения программ

Да Нет

2.3. Текст программы на gpss

10 XPDIS FUNCTION RN1,C20 ;Рандомно выбирается задержка между

генерациями программ

0.0,20/0.1,21/.2,22/.3,23/.4,24/.5,25

0.6,26/.7,27/.75,28/.8,29/.84,30/.88,31

0.9,32/.92,33/.94,34/.95,35/.96,36/.97,37

0.98,38/.99,39/.995,40

12 LONG FUNCTION RN1,D40 ;Рандомно выбирается время решения программ

.025,15/.05,16/.075,17/.1,18/.125,19/.15,20/.175,21/.2,22/.225,23/.25,24.275,25/.3,26/.325,27/.35,28/.375,29/.4,30/.425,31/.45,32/.475,33/.5,34.525,35/.55,36/.575,37/.6,38/.625,39/.65,40/.675,41/.7,42/.725,43/.75,44.775,45/.8,46/.825,47/.85,48/.875,49/.9,50/.925,51/.95,52/.975,53/1,54

16 GENERATE 1,FN$XPDIS ; Генерация программ по экспоненциальному

закону из интервала (20,40)

18 ASSIGN time,FN$LONG ; Задать текущей программе время решения.

20 que QUEUE spisok ; Входящий транзакт увеличивает очередь на

единицу

**************************

** устройство обработки **

**************************

28 met SEIZE ustr ; Выполнение программы началось

30 TEST L p$time,5,adv ; Если параметр time меньше 5, то иди ниже,

иначе иди в adv

34 ADVANCE p$time ; Задержка

38 ASSIGN time-,p$time ; Параметр time уменьшить на p$time

40 TRANSFER ,rel ; Перейти программе в rel

44 adv ADVANCE 5 ; Задержка

48 ASSIGN time-,5 ; Параметр time уменьшить на 5

50 rel RELEASE ustr ; Выполнение программы закончилось

************************

54 DEPART spisok ; Уменьшить длину очереди на единицу

56 TEST E p$time,0,que ; Если time равно 0, то иди ниже, иначе

иди по метке que

66 term TERMINATE 1 ; Завершили программу.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]