Главная » Все файлы » Просмотр файлов из архивов » Документы » Задание на лабораторные работы

Задание на лабораторные работы, страница 3

2018-01-12СтудИзба

Описание файла

Документ из архива "Задание на лабораторные работы", который расположен в категории "". Всё это находится в предмете "моделирование систем" из 8 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "моделирование систем" в общих файлах.

Онлайн просмотр документа "Задание на лабораторные работы"

Текст 3 страницы из документа "Задание на лабораторные работы"

Для программы 6 изменить работоспособность устройств как: 71, 71, 71, 71; 71, 91, 121, 151; 151, 121, 91, 71. Объяснитьь результаты моделирования по файлу стандартного отчета. Произвести также двойной прогон программ.

Задание 6

Изучение блока TRANSFER в режиме PICK.

Пример 6. Смоделировать обслуживание 100 заявок, которые поступают в систему каждые 52 мин. Обработка требований может осуществляться четырьмя приборами с равной вероятностью и соответственно со временами 122 мин., 92 мин., 72 мин., 132 мин.

Решение примера 6 представлено как программа 7.

simulate

10 generate 5,2,,100

20 transfer pick,3,6

30 transfer ,chan1

31 transfer ,chan2

32 transfer ,chan3

33 transfer ,chan4

********************1-й прибор обслуживания****

35 chan1 seize 1;

40 advance 12,2

50 release 1

60 transfer ,exit

********************2-й прибор обслуживания****

70 chan2 seize 2;

80 advance 9,2

90 release 2

100 transfer ,exit

********************3-й прибор обслуживания****

110 chan3 seize 3;

120 advance 7,2

130 release 3

140 transfer ,exit

********************4-й прибор обслуживания****

150 chan4 seize 4;

160 advance 13,2

170 release 4

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

180 exit terminate 1

start 100

end

Программа 7

Формат записи блока TRANSFER в режиме PICK в программе имеет следующий вид:

  1. transfer pick,3,6

В поле <A> стоит зарезервированное слово PICK. В этом режиме блок TRANSFER случайным образом с равной вероятностью отправляет транзакт в один из блоков, которые составляют ряд от начального блока, указанного в поле <B>, до блока, указанного в поле <C>. Если блок поля <B> обозначить как N, а блок поля <C> как М, то вероятность отправления транзакта на один из блоков с номерами N, N+1, N+2, . . . ,M определяется как 1/(M-N)+1. Для программы 7 эта вероятность равна Некоторая ограниченность применения блока TRANSFER в режиме PICK может быть обусловлена необходимостью расположения принимающих блоков в строгой последовательности друг за другом. Но, как видно из программы 7, с помощью блока TRANSFER в режиме безусловного перехода можно производить распределение транзактов в любую точку модели (к любому блоку).

Задание к примеру 6. Для программы 7 последовательно для каждого из трех устройств запрограммировать вывод транзактов без учета счетчика завершений (START 100). То же самое проделать при отсутствии поля <D> блока GENERATE. Объяснить результаты моделирования по файлу стандартного отчета.

Лабораторная работа №3

Системы с разнородными потоками событий. Статистика очередей.

Цикличная обработка. Блоки: PREEMPT, RETURN, QUEUE, DEPART,

ASSIGN, LOOP, SAVEVALUE. Оператор EQU.

Цель работы: изучение блоков аппаратной категории: PREEMPT, RETURN. Моделирование систем с очередями: блоки QUEUE, DEPART. Моделирование процессов с циклической обработкой требований: блоки ASSIGN, LOOP. Блок изменения сохраняемых величин: SAVEVALUE. Оператор присвоения числовых значений: EQU.

Блоки PREEMPT и RETURN относятся к аппаратной категории и к группе устройств. Эти блоки работают в паре. Блок PREEMPT — это блок захвата прибора (устройства). Он переводит устройство в прерванное состояние. Блок RETURN — блок возврата захваченного прибора. При вводе транзакта в блок RETURN снимается прерывание с устройства, которое было осуществлено тем же транзактом, который вызвал прерывание.

Блок ASSIGN является основным средством для задания значений параметров транзактов. Параметры транзактов принимают значения из множества целых чисел. Каждый транзакт может иметь один или более параметров. Параметры транзактов применяются для их различия в потоке сообщений, проходящих через модель. Номера параметров используются для ссылок на значения, присвоенные параметрам. В общем случае интерпретация смысла параметра произвольна и обычно задается разработчиком модели. В системе GPSS/PC допустимо для каждого транзакта назначать свыше 1000 параметров. Блок ASSIGN заменяет, увеличивает или уменьшает текущее значение параметра сообщения (транзакта) на заданное значение.

Блок LOOP используется для организации циклов, т.е. для управления числом повторений определенной последовательности блоков в модели. В поле <A> блока задается параметр, который используется в качестве счетчика цикла. Как правило, блок LOOP применяется в паре с блоком ASSIGN.

Оператор EQU предназначен для присвоения числовых значений именам, используемым в модели. Назначение числовых значений может происходить при выполнении каких-либо выражений, задании стандартных числовых атрибутах и т.д. Результат вычисления выражения преобразуется к целому виду.

Задание 1.

Изучение процессов циклической обработки требований.

Пример 1. Пусть каждое требование проходит 5 циклов обработки на приборе со временем 72 мин. по равномерному закону. Входной поток требований подчиняется равномерному закону со временем 52 мин. Смоделировать процесс обработки ровно 100 требований.

Решение примера 1 приводится как программа 1.

SIMULATE

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

MET1 EQU sqr(25)

MET2 EQU (sqr(9)+2^2)

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

10 GENERATE 5,2,,100; Генерация 100 транзактов

20 ASSIGN 13,MET1

30 SEIZE 1

40 CYCL5 ADVANCE MET2,2

50 LOOP 13,CYCL5

60 RELEASE 1

70 TERMINATE 1 Уничтожение транзактов (вывод из системы)

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

START 100; Задание числа счетчика завершений

END

Программа 1

В данном примере организация пятикратного цикла обработки осуществляется блоками ASSIGN и LOOP. Обращение к заданным числовым значениям (5 и 7) производится через метки MET1, MET2 посредством оператора EQU.

Формат записи блока ASSIGN:

  1. ASSIGN 13,МЕТ1

В поле <A> задан параметр транзакта под номером 13 (взят произвольно). Этому параметру сопоставляется число 5, которое переопределяется через метку МЕТ1 поля <B>. Значение поля <B> присваивается параметру, номер которого задается в поле <A>. Задание числа 5 осуществляется оператором EQU.

Формат записи оператора EQU:

МЕТ1 EQU SQR(25)

Метка МЕТ1 — это имя в поле метки оператора. В поле <A> оператора вычисляется выражение:

МЕТ2 EQU (SQR(9)+2^2)

Оператор EQU с меткой МЕТ2 в поле <A> вычисляет выражение:

Обращение к метке МЕТ1 задает число 5. Обращение к метке МЕТ2 задает число 7.

Формат записи блока LOOP:

  1. LOOP 13, CYCL5

В поле <A> задан номер параметра (такой же, как и в поле <A> парного блока ASSIGN), определяющего число циклов. В поле <B> задан по метке блок, на который переходит транзакт, если параметр, на который сделана ссылка в поле <A>, не равен нулю. Прохождение транзактом одного цикла уменьшает значение поля <A> на единицу. Когда значение параметра в поле <A> становится равным нулю, то транзакт переходит к следующему по номеру блоку (в рассматриваемом случае к блоку RELEASE под номером 60). Начало цикла начинается с блока ADVANCE с меткой CYCL5 под номером 40, окончание цикла — с блока LOOP под номером 50. Если транзакт входит в блок LOOP со значением параметра, равным n, то этот транзакт войдет в блок LOOP n раз и вернется к началу этого цикла (n-1) раз.

В файле стандартного отчета (нажатием клавиши F7) приводятся следующие статистики (результаты моделирования):

Файл стандартного отчета программы 1

GPSS/PC Report file REPORT.GPS. (V 2, # 37349) 07-21-2001 15:21:22 page 1

START_TIME END_TIME BLOCKS FACILITIES STORAGES FREE_MEMORY

0 3499 7 1 0 77824

LINE LOC BLOCK_TYPE ENTRY_COUNT CURRENT_COUNT RETRY

10 1 GENERATE 100 0 0

20 2 ASSIGN 100 0 0

30 3 SEIZE 100 0 0

40 CYCL5 ADVANCE 500 0 0

50 5 LOOP 500 0 0

60 6 RELEASE 100 0 0

70 7 TERMINATE 100 0 0

FACILITY ENTRIES UTIL. AVE._TIME AVAILABLE OWNER PEND INTER RETRY DELAY

1 100 0.998 34.94 1 0 0 0 0 0

XACT_GROUP GROUP_SIZE RETRY

POSITION 0 0

Задача повторного пятикратного обслуживания решается блоком LOOP, который отправляет транзакты на блок ADVANCE. Из файла стандартного отчета видно, что через блоки LOOP и ADVANCE проходит в пять раз больше транзактов, чем через остальные блоки. Среднее время обслуживания в устройстве также в пять раз больше (в позиции AVE_TIME), чем время обслуживания, которое задается в поле <A> блока временной задержки ADVANCE (см. PRIM11.GPS).

Задание к примеру 1: Снять ограничение на поступление требований в систему. Изменить номер параметра транзактов, по которому осуществляется циклическая обработка: присвоить параметру числа 2, 153, 678, 999. В заданные номера параметра занести числа 3, 7, 9, 11, вычисленные как корень квадратный из соответствующего числа. Вычисления зафиксировать оператором EQU.

Задание 2.

Изучение блоков PREEMPT, RETURN.

Пример 2. На обработку по равномерному закону поступает два потока заготовок деталей: первый — со временем 52 мин., второй — 252 мин. Второй поток прерывает изготовление деталей первого потока. Время обработки деталей первого потока 72 мин., второго — 112 мин. Смоделировать процесс обработки 100 деталей, образующих два потока.

Решение примера 2 приводится как программа 2.

SIMULATE

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

10 GENERATE 5,2; Формирование 1-го потока деталей

20 SEIZE FACIL1; Устройство под именем FACIL1

30 ADVANCE 7,2

40 RELEASE FACIL1

50 TERMINATE 1; Вывод деталей 1-го потока

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

60 GENERATE 25,2; Формирование 2-го потока деталей

70 PREEMPT FACIL1; Прерывание обработки 1-го потока

80 ADVANCE 11,2; Время обработки 2-го потока=времени прерывания

90 RETURN FACIL1; Снятие прерывания 1-го потока

100 EXIT TERMINATE 1; Вывод деталей 2-го потока

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

START 100; Задание числа счетчика завершений, равное общему

*количеству деталей

END

Программа 2

Два блока GENERATE (под номерами 10 и 60 соответственно) формируют два независимых потока транзактов. Блок PREEMPT позволяет получать в пользование устройство, указанное в поле <A> этого блока, т.е. устройства под именем FACIL1. Это соответствует тому состоянию системы, когда происходит прерывание обработки деталей 1 потока в устройстве и начинается обработка деталей 2 потока в том же устройстве. Длительность обработки деталей 2 потока задается блоком ADVANCE под номером 80. Стандартная статистика системы GPSS/PC определяется только для одного устройства — под именем FACIL1.

Для блока PREEMPT могут быть задействованы пять полей. Только поле операнда <A> является обязательным. В программе 2 формат записи блока PREEMPT следующий:

  1. PREEMPT <A>

В поле <A> блока PREEMPT (под номером 70) задается имя устройства (по метке FACIL1), на котором происходит прерывание 1-го потока транзактов от блока GENERATE под номером 10. Длительность прерывания задается блоком ADVANCE под номером 80. В то же время устройство FACIL1 во время прерывания 1-го потока деталей начинает обслуживать детали 2-го потока, который формируется блоком GENERATE под номером 60. Снятие прерывания осуществляется блоком RETURN.

Формат записи блока RETURN:

  1. RETURN <A>

В поле <A> блока RETURN задается имя устройства (по метке FACIL1), с которого снимается прерывание. Прерывание может быть снято только тем транзактом, которым оно было генерировано (тем транзактом, которым устройство было переведено в состояние прерывания). Приведенный формат блока возврата RETURN является единственным.

Задание к примеру 2:

  • Попарно изменить среднее время генерирования транзактов в соответствии с рядом чисел: 6 и 15; 9 и 11; 13 и 9; 21 и 7.

  • Попарно изменить среднее время обработки требований в соответствии с рядом чисел: 5 и 13; 9 и 9; 11 и 7; 15 и 5.

  • Объяснить результаты выполнения программ по файлу стандартного отчета.

Рассмотрим некоторые дополнительные возможности блока PREEMPT.

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
428
Средний доход
с одного платного файла
Обучение Подробнее