ТЕМА (1086517), страница 11

Файл №1086517 ТЕМА (Учебное пособие) 11 страницаТЕМА (1086517) страница 112018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 11)

Таблица 13.1.

Разыгранные значения интервалов времени прихода в блоке 1

Номер по порядку

Разыгранное значение

1

14

2

13

3

17

4

15

В табл.13.2 показаны первые три разыгранных значения, получаемых интерпретатором из выборки чисел с распределением 16 ± 4, которое задано в блоке 5 ADVANCE.

Таблица 13.2.

Разыгранные значения интервалов времени прихода в блоке 5

Номер по порядку

Разыгранное значение

1

18

2

12

3

14

Состояния цепей модели

Рис. 13.6.

Состояния цепей для первого примера испльзования цепей текущих и будущих событий: КМР - "как можно раньше"

Номер строки

Модельное время

Цепь текущих событий к началу цепи

Цепь будущих событий к началу цепи

1

До фазы ввода

Пусто

Пусто

2

После фазы ввода

Пусто

[1,14,НЕТ,0,1] [2,480,НЕТ,0,8]

3

14

[1,КМР,НЕТ,0,1]

[2,480,НЕТ,0,8]

4

14

Пусто

[3,27,НЕТ,0,1] [1,32,5,0,6] [2,480,НЕТ,0,8]

5

27

[3,KMP,НЕТ,0,1]

[1,32,5,0,6] [2,480,НЕТ,0,8]

6

27

[3,KMP,2,0,3]

[1,32,5,0,6] [4,44,НЕТ,0,1] [2,480,НЕТ,0,8]

7

32

[3,KMP,2,0,3] [1,KMP,5,0,6]

[4,44,НЕТ,0,1] [2,480,НЕТ,0,8]

8

32

Пусто

[4,44,НЕТ,0,1] [3,44,5,0,6] [2,480,НЕТ,0,8]

9

44

[4,KMP,НЕТ,0,1] [3,KMP,5,0,6]

[2,480,НЕТ,0,8]

10

44

Пусто

[4,58,5,0,6] [1,59,НЕТ,0,1]

На рис.13.6 показаны цепи текущих и будущих событий в течение нескольких первых значений таймера модельного времени при прогоне модели, приведенной на рис. 13.5 (см. предыдущую страницу). Каждая строка на рис. 13.6 определяется своим номером (первая колонка), который необходим для удобства ссылок при обсуждении рисунка. Различные значения моментов времени, отмечаемые таймером в течение моделирования, показаны на рис.13.6 в колонке "Модельное время". Третья колонка представляет цепь текущих событий, четвертая - цепь будущих событий. Просмотр цепи слева направо на рисунке соответствует ее анализу от начала к концу. Закодированная в виде пятипозиционных записей информация о транзактах, находящихся в цепях, показана на рис.13.6 в виде строк третьей и четвертой колонок. Иногда цепь может не содержать ни одного транзакта. Эта ситуация обозначена словом "пусто".

В клетке строк 1 и 2 на рис.13.6 показана информация до и после фазы ввода первых транзактов. Обработка интерпретатором состояний модели начинается с фазы ввода. Для каждого значения модельного времени состояния цепей показаны в двух строках.

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

Рассмотрим теперь, какие действия выполняются интерпретатором над состояниями цепей на рис.13.6.

Объяснение рис. 13.6. Состояния цепей

Фаза ввода (от строки 1 к строке 2). Первым действием интерпретатора является ввод модели. До фазы ввода цепи текущих и будущих событий пусты (строка 1). В течение фазы ввода интерпретатор проверяет каждую прочитываемую карту, определяя, не является ли она картой GENERATE.

При чтении этой карты интерпретатор сразу же "воспринимает" блок GENERATE для установления времени прихода транзакта в этот блок. Для этого интерпретатор сначала должен определить значение модельного времени прихода. Если задано время смещения транзакта операндом С блока, то сначала время прихода устанавливается в значение, равное значению операнда С. В противном случае разыгрывается случайное значение в соответствии с распределением интервалов прихода, определенным операндами А и В блока GENERATE. Времени прихода присваивается разыгранное значение. Далее интепретатор выбирает транзакт из вершины пассивного буфера и помещает его в цепь будущих событий с целью ввести в модель через блок GENERATE в заданный момент прихода.

Если время прихода равно нулю (либо значение операнда С равно нулю, либо разыгранное в соответствии с распределением значение интервала равно нулю), то оно автоматически заменяется интерпретатором на единицу. Это означает, что нет возможности ввести транзакт через блок GENERATE в момент модельного времени, равный нулю. Самое раннее значение = 1. Заметим, что наш транзакт еще находится на пути в модель, пребывая в цепи будущих событий. Он пока не находится ни в одном из блоков.

В модели на рис.13.5 (предыдущая страница) при чтении блока 1 GENERATE на фазе ввода модели разыгрывается число из выборки с распределением 18 - 6. Первым разыгранным значением, как следует из табл.13.1, является 14. Интерпретатор выбирает транзакт 1 из пассивного буфера и помещает его в цепь будущих событий (ЦБС), планируя вход в блок 1 в момент времени, равный 14. В течение фазы ввода также читается блок 8 GENERATE. В этом блоке задается детерминированное значение времени - 480. Интерпретатор из пассивного буфера достает транзакт 2 и помещает его в ЦБС, планируя вход транзакта в блок 8 в момент времени, равный 480. Поскольку интерпретатор располагает транзакты в ЦБС в соответствии с временем движения, транзакт 2 ставится следом за транзактом 1.

После чтения блока 9 TERMINATE стоит карта START. Читая эту карту, интерпретатор определяет значение ее операнда А и помещает копию этого значения в счетчик завершений. Фаза ввода для нас закончена. Проверка цепи будущих событий в заключение фазы ввода (строка 2, рис. 13.6) показывает, что в ней находятся два транзакта, по одному для каждого из блоков GENERATE в модели. Транзакт 1 изображает первого клиента, идущего в парикмахерскую. Он появится в парикмахерской в момент модельного времени, равный 14. Планируемый вход транзакта 1 в блок 1 аналогичен приходу клиента к двери парикмахерской.

Транзакт 2 символизирует собой таймер, направляющийся в модель для того, чтобы завершить моделирование. Когда таймер модельного времени достигнет значения 480, транзакт-таймер, наконец, придет и, войдя в блок TERMINATE (блок 9), вызовет завершение моделирования. Напомним, что в качестве третьего элемента выступает номер блока, в котором находится транзакт. Но транзакты 1 и 2 не входят ни в один из блоков модели. Они еще находятся на пути в модель, поэтому на месте номера блока стоит слово "НЕТ".

Блок-схема на рис.13.7 описывает рассмотренные нами особенности фазы ввода. Вся логика работы интерпретатора на фазе ввода, представленная в блок-схеме, хорошо понятна из приведенного выше описания.

Рис. 13.7.

Как показано на рис.13.7, когда фаза ввода завершается интерпретатор переходит к фазе коррекции таймера. После первой коррекции выполняется первый раз фаза просмотра. Затем фаза коррекции таймера выполняется второй раз, фаза просмотра выполняется второй раз и т.д.

Первое выполнение корректировки таймера (от строки 2 к строке 3). Интерпретатор устанавливает таймер в значение 14 - значение времени движения транзакта (транзакт 1), находящегося в начале цепи будущих событий в строке 2. Затем он перемещает транзакт 1 в пустую прежде цепь текущих событий. Следующий транзакт (транзакт 2) в ЦБС имеет значение времени движения, отличное от 14. Следовательно, первое выполнение фазы коррекции таймера закончено.

Заметим, что в строке 3 на рис.13.6 цепь текущих событий (ЦТС) содержит лишь один единственный транзакт, описанный как [1, КМР, НЕТ, 0, 1]. Время входа в пятипозиционной записи обозначено как КМР, т.е. "Как можно раньше". Все транзакты в ЦТС в позиции "время движения" имеют запись КМР. Это объясняется тем, что они "хотели" бы войти в следующий блок сейчас же (т.е. в текущие значения модельного времени), или, если вход в следующий блок закрыт, то как можно раньше. Текущий блок для этого транзакта по-прежнему содержит запись "HET", поскольку транзакт все еще не вошел ни в один из блоков модели. Он займет какой-либо блок только после того, как отработает фаза просмотра. После завершения первого выполнения фазы коррекции таймера сразу же начинается выполнение фазы просмотра.

Первое выполнение фазы просмотра (от строки 3 к строке 4). Выбрав транзакт 1 из начала третьей строки ЦТС, интерпретатор двигает его в блок 1 (блок GENERATE), затем проверяет, может ли транзакт 1 быть перемещен в следующий блок - блок 2 QUEUE. Блок QUEUE не запрещает вход, поэтому попытка входа будет успешной.

Теперь, поскольку транзакт может уйти из блока GENERATE, интерпретатор временно приостанавливает его продвижение и планирует приход следующего транзакта в блок GENERATE. Второй розыгрыш числа в соответствии с распределением 18 ± 6 интервалов прихода дает значение 13 (см. табл.13.1). Транзакт выбирается из вершины пассивного буфера (транзакт 3) и помещается в цепь будущих событий с запланированным временем входа в блок 1, равным "текущее + 13", т. е. 27. Напомним, что для определения времени прихода следующего транзакта разыгранное значение интервала прихода прибавляется к текущему значению таймера.

Что касается блока GENERATE, то здесь необходимо сделать два замечания:

1. Интерпретатор не планирует следующий приход в блок GENERATE до тех пор, пока предыдущий транзакт не сделает успешную попытку войти в следующий блок. Если следующим является блок, который может запретить вход (например, блок SEIZE), то планирование будет иметь место спустя некоторое время после входа транзакта в блок GENERATE.

2. Интерпретатор прерывает движение транзакта, выходящего из блока GENERATE, на время планирования входа его последователя. После завершения планирования движение транзакта возобновляется.

Выполнение этих двух условий в виде блок-схемы показано на рис. 13.8. После завершения планирования транзакт 1 вызывает выполнение подпрограммы блока QUEUE. Из блока QUEUE интерпретатор перемещает транзакт в блоки SEIZE, DEPART и ADVANCE. В блоке ADVANCE (блок 5) определяется время задержки в соответствии с распределением 16 ± 4. По табл. 13.2 находим, что первым разыгранным значением является 18. Следовательно, транзакт 1 выводится из ЦТС и помещается в ЦБС. Планируется переход из блока 5 в блок 6 (блок RELEASE) в момент времени "текущий + 18, т.е. в момент времени 32.

Рис.13.8. Фрагмент блок-схемы,показывающий логику работы интерпретатора при выходе
транзакта из блока GENERATE и планировании прихода его последователя.

Теперь, поскольку транзакт 1 вызвал выполнение подпрограммы блока SEIZE при своем движении, интерпретатор заново просматривает цепь текущих событий. Цепь пуста. Следовательно, следующим шагом будет выполнение фазы коррекции таймера.

Характеристики

Тип файла
Документ
Размер
3,47 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

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