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

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

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

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

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

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

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

В поле <D> задается номер параметра управляющего транзакта (в программе не задан). Информация по полю <D> может быть использована для вычисления времени, которое управляющий транзакт должен провести в списке будущих событий, когда устройство становится недоступным.

Поле <E> может быть использовано в следующих допустимых режимах:

  • режим RE (режим удаления) указывает на то, что прерванные транзакты (например, блоком PREEMPT) больше не могут претендовать на устройство. Эти транзакты пытаются войти в альтернативный блок, заданный в поле <F>. В программе задан режим удаления (в поле <E> задан операнд "re");

  • режим СО (режим продолжения) допускает использование устройства всеми транзактами во время периода недоступности. Транзакты занимают устройство в порядке их приоритета;

  • если режим не задан (режим по умолчанию — пустое поле), то прерванный транзакт покидает список прерывания устройства, и не допускается использование устройства во время периода недоступности.

В поле <F> задается номер или имя альтернативного блока, к которому направляется прерванный транзакт. Поле <F> используется, если в поле <E> задан режим удаления. В программе в поле <F> задан блок с меткой FACIL3.

Когда устройство становится недоступным поле <G> определяет действия с транзактами, пытающимися занять устройство или сгенерировать на нем прерывание (например, блоком PREEMPT) в момент, когда это устройство становится недоступным. Допускаются следующие режимы поля <G>:

  • режим RE (режим удаления) указывает на то, что задержанные транзакты больше не должны претендовать на устройство. Эти транзакты не должны пытаться войти в блоки RETURN или RELEASE. Они удаляются из списков задержки с тем, чтобы в дальнейшем попытаться войти в альтернативный блок, заданный полем <H>. В программе используется режим удаления (в поле <G> задан операнд "re");

  • режим СО (режим продолжения) предполагает, что всем транзактам будет разрешено использовать устройство во время периода его недоступности. Транзакты занимают устройство в порядке их приоритета;

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

Поле <H> задает номер или имя блока, к которому направляются задержанные транзакты в режиме RE поля <G>. В программе в поле <H> задан блок с меткой FACIL4.

Блок PREEMPT используется в простом режиме прерывания.

Распределение транзактов по устройствам может быть изменено, если для одного из устройств применить блок TERMINATE с пустым полем <A>.

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

230 FAVAIL 1

В поле <A> блока FAVAIL задается номер или имя устройство, с которого снимается недоступность. В программе в поле <A> задано число 1 — номер первого устройства. Блок FAVAIL делает доступным заданное устройство после периода недоступности. Чаще блок FUNAVAIL используется только для осуществления недоступности устройства.

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

  • Произвести в программе изменения по недоступности устройства: сделать недоступным 2-е устройство, затем 3-е, затем 4-е. Соответственно изменить перераспределение транзактов блоком FUNAVAIL. При каждом новом распределении транзактов задавать следующие интервалы времени поступления транзактов в систему: 7, 9, 11, 15, 17, 19 мин. Проанализировать и объяснить файл стандартного отчета по каждой новой программе.

Моделирование многоканальных устройств в GPSS/PC

Для моделирования параллельной работы устройств в системе GPSS/PC вводится понятие многоканального устройства. Такое устройство характеризуется определенной емкостью накопителя поступающей информации на обработку. Емкость накопителя описывается оператором STORAGE. Кроме того, в системе GPSS/PC существуют блоки для анализа, использования и создания недоступности многоканального устройства. К ним относятся блоки использования накопителя ENTER и LEAVE; доступность и недоступность многоканального устройства осуществляется блоками SUNAVAIL и SAVAIL.

Блок SUNAVAIL переводит многоканальное устройство (а по существу накопитель) в состояние недоступности. Блок SAVAIL переводит заданное многоканальное устройство из состояния недоступности в состояние доступности.

Пример 7. Пусть входной поток требований поступает в накопитель с допустимой емкостью, равной 3 единицам, равномерно в течение 51 мин. Если поступающие требования застают накопитель в состоянии недоступности, то они направляются в 1-е устройство, в противном случае поступают на обработку во 2-е устройство. Время обработки для 1-го устройства равно 131 мин., для второго — 91 мин. Смоделировать процесс обработки 100 требований, если состояние недоступности накопителя происходит через каждые 291 мин. в течение 17 мин.

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

Программа 7

SIMULATE

nak STORAGE 3; Накопитель емкостью в 3 единицы

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

10 GENERATE 5,1,,100

20 GATE SNV nak,FACIL2; Анализ доступности накопителя

30 ENTER nak

40 FACIL1 SEIZE 1; 1-е устройство с меткой FACIL1

50 LEAVE nak

60 ADVANCE 13,1

70 RELEASE 1

80 TRANSFER ,EXIT

100 FACIL2 SEIZE 2; 2-е устройство с меткой FACIL2

200 ADVANCE 9,1

300 RELEASE 2

400 EXIT TERMINATE 1

500 GENERATE 29,1

510 SUNAVAIL NAK

520 ADVANCE 17

530 SAVAIL NAK

550 TERMINATE

START 100

;END

В данном примере поступающие в систему требования сначала буферизуются в накопителе емкостью в 3 единицы. Потом, в зависимости доступности или недоступности накопителя, они направляются в одно из устройств с помощью блока GATE.

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

510 SUNAVAIL NAK

В поле <A> блока задается имя накопителя (оператора STORAGE). В программе накопитель под именем NAK становится недоступным.

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

530 SAVAIL NAK

Блок SAVAIL переводит накопитель под именем NAK из состояния недоступности в состояние доступности. В поле <A> блока SAVAIL задается имя накопителя, которое переводится в состояние доступности.

Блоки SUNAVAIL и SAVAIL работают совместно.

В данной программе перевод из состояния недоступности в состояние доступности происходит через 17 мин. (в поле <A> блока ADVANCE под номером 520 задано время задержки, равное 17 мин.). В то же время состояние недоступности наступает каждые 291 мин. Команды на недоступность генерируются блоком GENERATE под номером 500.

Формат записи блока GATE в режиме SNV:

20 GATE SNV nak,FACIL2

В операционном поле <X> блока GATE задан логический операнд SNV — многоканальное устройство (накопитель) не доступно. В поле <A> определено имя накопителя (в программе nak), состояние которого проверяется. В поле <B> задается альтернативный блок (в программе FACIL2), если логический операнд поля <X> имеет значение "ложь". Если альтернативный блок задан, то блок GATE работает в режиме безусловного входа, т.е. транзакт всегда может войти в блок GATE. При этом если логический операнд имеет значение "истина", то транзакт пытается войти в следующий по номеру блок (в программе блок под номером 30). Если же операнд имеет значение "ложь", то транзакт пытается войти в альтернативный блок, заданный полем <B> (в программе блок под номером 100 и с меткой FACIL2).

Перераспределение требований по устройствам может быть изменено блоком GATE с другим условием в операционном поле <X>.

Приведем программу под номером 8 для решения примера 7, в котором зададим условие доступности накопителя. Для этого случая в поле <X> блока GATE установим логический операнд SV. Изменение режима работы блока GATE отразится на статистике устройств и накопителя.

Программа 8

SIMULATE

nak STORAGE 3; Накопитель емкостью в 3 единицы

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

10 GENERATE 5,1,,100

20 GATE SV nak,FACIL2; Анализ доступности накопителя

30 ENTER nak

40 FACIL1 SEIZE 1; 1-е устройство с меткой FACIL1

50 LEAVE nak

60 ADVANCE 13,1

70 RELEASE 1

80 TRANSFER ,EXIT

100 FACIL2 SEIZE 2; 2-е устройство с меткой FACIL2

200 ADVANCE 9,1

300 RELEASE 2

400 EXIT TERMINATE 1

500 GENERATE 29,1; Команды недоступности

510 SUNAVAIL NAK

520 ADVANCE 17

530 SAVAIL NAK

550 TERMINATE

START 100

;END

Задание к программам 7 и 8.

  • Видоизменить программы так, чтобы моделирование осуществлялось в течение 5 часов.

  • В исходных программах изменить емкость накопителя: 2, 4, 5, 6, 7, 8, 9, 10.

  • В исходных программах команды недоступности генерировать по средним значениям из интервала от 15 до 50 мин.

  • Запрограммировать ситуацию: если 1-е устройство не доступно, то транзакты должны покидать систему. Система функционирует 5 часов.

  • Изучить и объяснить файлы стандартных отчетов.

Моделирование накопления транзактов, синхронизации движения транзактов по модели, управление потоком транзактов в зависимости

от состояния логического ключа

Блок GATHER осуществляет накопление сообщений (транзактов), принадлежащих одному и тому же набору (ансамблю), с последующей попыткой одновременной передачи их к следующему блоку. Действие блока GATHER аналогично действию блока ASSEMBLE. Отличие состоит в том, что после накопления в блоке числа транзактов, указанного в поле <A>, они все передаются в следующий блок. Блок GATHER не уничтожает вошедших транзактов.

Блок MATCH предназначен для синхронизации продвижения двух транзактов одного ансамбля (семейства), движущихся по разным путям модели. Для синхронизации необходимы два блока MATCH, находящиеся в соответствующих местах моделирующей программы и называемые сопряженными.

Для представления в модели коммутируемых объектов используют логические ключи, моделируемые блоками LOGIC и GATE. Блок LOGIC устанавливает положение ключа, которое может быть проверено любым сообщением (транзактом) в любой части модели. Блок LOGIC используется для "включения", "выключения" или инвертирования состояния ключа. Блок GATE, в зависимости от состояния логического ключа, осуществляет управление потоком транзактов.

Пример 8. Смоделировать следующий процесс прохождения 100 пакетов на почте.

На участок сборки пакетов поступают коробки, и письма с интервалом времени 254 единицы. На контроль коробки затрачивается 41 единицы времени; контроль писем производится последовательно со временем 21 единица времени на письмо. Операция сборки требует одновременного поступления коробки и всех писем и производится со временем 42 единицы. В одной коробке должно быть 8 писем. Все процессы подчиняются равномерному закону.

Единица времени задается пользователем. Система GPSS/PC осуществляет моделирование в относительных единицах, поэтому в файле стандартного отчета указываемые единицы времени можно рассматривать как те, которые задаются пользователем (минуты, секунды и т.д.). Решение примера 8 приводится как программа 9.

Программа 9

simulate

10 generate 25,4,,100

20 split 8,chan2

30 chan1 seize 1

40 advance 4,1

50 release 1

60 transfer ,comm

70 chan2 seize 2

80 advance 2,1

90 release 2

100 gather 8

110 comm assemble 9

120 chan3 seize 3

130 advance 4,2

140 release 3

150 exit terminate 1

start 100

;end

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

  1. gather <A>

В поле <A> задается число транзактов, принадлежащих к одному семейству, которое надо накопить (в программе 8 транзактов). Операнд поля <A> может быть именем, положительным целым (как в программе число 8), СЧА, СЧА с параметром (СЧА$<параметр>). При входе транзакта в блок GATHER, интерпретатор GPSS/PC просматривает семейство, к которому он принадлежит, и проверяет, находится ли в данном блоке GATHER другой транзакт из того же семейства. Если в блок GATHER не вошло заданное число транзактов, транзакты, находящиеся в блоке, остаются в состоянии синхронизации.

В программе после поступления в блок GATHER 8 транзактов они все выходят из блока и поступают в следующий по номеру блок — блок под номером 110 ASSEMBLE. Блок ASSEMBLE по своему функциональному назначению собирает 9 транзактов и отправляет в следующий по номеру блок один транзакт. С помощью блока ASSEMBLE моделируется процесс сборки пакета — 8 писем и коробка.

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