Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Terminate 1




TABULATE TTIME

LEAVE STO2

DEPART LINE

ENTER STO2

QUEUE LINE

TTIME TABLE M1,100,100,12

WTIME QTABLE LINE,50,50,10

STO2 STORAGE 2

1,70/2,80/3,90

CLASS FUNCTION RN1,D3

0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915

EXP FUNCTION RN1,C24

.7,1.2/.75,1.38/.8,1.6/.84,1.85/.88,2.12/.9,2.3

.92,2.52/.94,2.81/.95,2.99/.96,3.2/.97,3.5/.98,3.9

.99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

.333,1/.667,2/1,3

MEAN FUNCTION P$TYPE,L3

PRIOT VARIABLE 4-P$TYPE

GENERATE 100,FN$EXP

ASSIGN TYPE,FN$CLASS

PRIORITY V$PRIOT

QUEUE P$TYPE

DEPART P$TYPE

ADVANCE FN$MEAN,FN$EXP

Пусть на вход моделируемой многоканальной СМО с двумя каналами обслуживания поступает пуассоновский поток заявок со средним интервалом поступления 100 единиц модельного времени. Каждая заявка с равной вероятностью 1/3 относится к одному из трех классов: 1, 2 или 3, а среднее время обслуживания заявок каждого типа составляет соответственно 70, 80 и 90 единиц модельного времени. Чем меньше среднее время обслуживания заявки, тем выше ее приоритет. Необходимо построить модель, позволяющую оценить средние значения времени ожидания заявок каждого типа, а также распределения общего времени ожидания в очереди и общего времени пребывания в системе. Такая модель имеет вид, показанный далее.

Переменная PRIOT служит для вычисления приоритета транзакта как функции его класса, содержащегося в параметре с именем TYPE. Транзакты класса 1 (P$TYPE=1) получат приоритет 3, транзакты класса 2 - приоритет 2 и транзакты класса 3 - приоритет 1.

В блоке ASSIGN в параметр TYPE транзактов записывается класс заявки, разыгрываемый с помощью функции CLASS. В следующем блоке PRIORITY с помощью переменной PRIOT определяется приоритет транзактов, первоначально равный 0 (отсутствует поле E в блоке GENERATE). Далее каждый транзакт "отмечается" в блоках QUEUE в двух очередях. Очередь с именем LINE является общей для транзактов всех классов. Входя в следующий блок QUEUE, транзакт отмечается в очереди с номером 1, 2 или 3 в зависимости от класса заявки, записанного в параметре TYPE. Аналогичным образом фиксируется уход из очередей в блоках DEPART. Таким образом, в модели создается четыре объекта типа "очередь": одна очередь с именем LINE и три с номерами 1, 2 и 3. При этом три последние очереди создаются одной парой блоков

QUEUE-DEPART. В этом и заключается эффект косвенной адресации.

Как уже отмечалось ранее, каждому имени объекта симулятор сам ставит в соответствие некоторый номер. При ссылках на объекты одного и того же типа одновременно по именам и номерам, как это имеет место в рассматриваемом примере, существует опасность параллельной адресации к одному и тому же объекту вместо двух разных или, наоборот, к двум разным объектам вместо одного. Так, в рассматриваемой модели мы, вообще говоря, не знаем, какой именно номер поставит симулятор в соответствие имени очереди LINE. Если этот номер будет от 1 до 3, то это приведет к ошибке, так как в модели окажется не четыре очереди, а три, причем в одну из них будет заноситься информация как обо всех транзактах, так и дополнительно о транзактах одного из трех классов. Как избежать такой ситуации?

К счастью, в большинстве случаев об этом можно не заботиться, поскольку симулятор ставит в соответствие именам объектов достаточно большие номера, начиная с 10000. При необходимости же можно воспользоваться оператором EQU, о котором уже говорилось ранее, и самостоятельно сопоставить имени объекта желаемый номер. Например, в рассматриваемой модели для того, чтобы очередь с именем LINE имела номер 4, достаточно записать оператор:

 




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 399; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.