Ж.Структура объектов


Транзакты. В модели эти динамические элементы обозначаются Xакт или просто X с его идентификационным номером – ИН (IN). ИН задаётся в порядке появления транзактов в модели, когда в МФ существует несколько источников транзактов, то назначение ИН не меняется (в порядке появления Xакт).. Каждый Xакт находится в исследуемый момент времени в текущемблоке (Current Block) и делает попытку войти в следующийожидаемый блок (Next Block Attempted). При прохождении Xакт через последовательность ОБ МФ от момента зарождения до момента терминирования может возникнуть четыре ситуации:

1. Задержка Xакт при входе в ОБ (например, ADVANCE),

2. Препятствие входу Xакт (блокирование) в следующий ОБ (например SEIZE),

3. Уничтожение (терминирование) Xакт при попадании в ОБ TERMINATE,

4. Возвращение Xакт к началу МФ при появлении ОБ TRANSFER вместо ОБ TERMINATE

Две последние ситуации не могут возникать одновременно, так терминирование происходит при выходе Xакт из системы (обслуженный покупатель, посланное сообщение, прошедший пункт контроля автомобиль и т. д.) В случае, когда Xакт не покидает систему, а возвращается к началу, используется ОБ TRANSFER, изменяющий направление движения (например, клерки в нотариальной конторе представляют собой Xакт, но подготовив один документ и подписав его у менеджера возвращаются на рабочее место для подготовки нового документа). Как только Xакт прекращает движение (две первые ситуации), сразу начинается движение следующего транзакта, становящегося активным, Отсюда следует правило, которое неуклонно соблюдается при моделировании:В каждый момент времени в модели движется только один Xакт!Xакт может иметь один или больше атрибутов (атрибут - характеристика относящаяся к отдельному транзакту: цвет, тип, число покупок и т.д.), одни из атрибутов вводятся программой, например ИН, другие назначаются исследователем, например тип движущегося по дороге транспортного средства. В случае когда надо рассмотреть людей и предметы, представляемых транзактами, то скорее всего в МФ надо их представить отдельными цепочками ОБ.

Ресурсы. В отличии от транзактов ресурсы (устройства, памяти) неподвижные, постоянные объекты, которые за время одного прогона ИМ остаются неизменными. Ресурсы используются транзактами для решения задачи, определённой исследователем. Xакт соревнуются между собой за использование ресурсов, ожидают их освобождения предыдущим Xакт, для реализации задачи моделирования могут потребовать несколько разных ресурсов. Ресурсы также могут быть людьми (число кассиров в банке), или предметами (станок, автомат на АЗС), возможно сочетание ресурсов в одной модели.

В МФ используются:

операторы блоков (блоки) –ОБ,

операторы управления –ОУ,

операторы описания - ОО.

Каждая из этих групп операторов имеет свой набор характеристик, определяющих их индивидуальные особенности

· ОБ характеризуются размещением, действием (названием совершаемой операции) и операндами. Рассмотрим их подробнее:

- Размещение - каждый ОБ занимает, предназначенную ему позицию и нумеруется самой программой, начиная от 1 и далее в порядке их появления в МФ. Исследователь не имеет возможности присваивать номера ОБ, но при необходимости может давать имя (присваивать ярлык) ОБ одинакового названия, для их чёткого различения. Особенно это важно при изменении последовательного движения транзактов или при возвращении к уже пройденному участку МФ.

- Код действия - каждый ОБ обозначается ключевым словом, уточняющим характер операции, совершаемой ОБ в процессе ИМ. Ключевые слова типа GENERATE, TERMINATE, ADVANCE, SEIZE (см. приложение П.1) обязательно пишутся прописными буквами и могут быть сокращены до четырёх символов, например, GENE, TERM и т.д. Ошибки в написании ОБ приводят к появлению в листинге сообщений об ошибках компиляции и процесс моделирования не начинается.

- Операнды – каждый ОБ имеет от одного до нескольких операндов, дающих информацию, на которой основано действие ОБ. Операнды обозначаются A,B,C… Отсутствие операнда на назначенном ему месте определяется значением по умолчанию, чаще 0, а иногда . Нередко бывают ситуации, когда часть операндов задаётся в явном виде, а часть используется по умолчанию.

· ОУ и ОО. Структура этих операторов схожа со структурой ОБ, только вместо номера строки размещения первой характеристикой является ярлык(label). Вторая и третья характеристики совпадают по смыслу (код действия и операнды).

- Ярлык для ОУ в некоторых случаях требуется, а в некоторых является не нужным, а для некоторых ОУ и ОО он просто не предусмотрен.

- Код действия –каждый ОУ обозначается ключевым словом, определяющим результат исполнения этого ОУ, ОО также представляет ключевое слово, несущее информацию при трансляции модели, но не влияющую на процесс моделирования.

- Операнды ОУ имеют нуль или несколько операндов. Они также обозначаются А,В,С… и для определённых типов операторов задаются в явном виде, а в большинстве применяются по умолчанию.

Приведя эти начальные соображения по структуре объектов, перейдём к представлению структуры МФ, которую можно представить в виде 3-х укрупнённых модулей рис.38.

Рассмотрим более подробно отличительные черты приведенноё структуры, Жирным шрифтом выделены блоки, без которых процесс ИМ не может быть осуществлён.

1. Всегда, в любом случае на первом месте модуля задания стоит ОУ SIMULATE, который даёт команду на компиляцию МФ, отсутствие этого ОУ приводит к машинной ошибке и процесс ИМ не начинается.

2 ОУ START даёт команду на исполнение МФ, при этом счётчик свершений -СС устанавливается в начальное значение, инициализируется ОБ GENERATE, т.е начинают поступать транзакты, которые движутся последовательно блок за блоком.

3. ОУ END, стоящий обязательно последним в МФ прекращает процесс ИМ, выполняя две операции: - сигнализируя о том, что МФ физически кончился и прекращая исполнение МФ, даёт команду о возвращении в командную оболочку.

Рис.38 Укрупнённая структура модельного файла:

1 - модуль задания, 2 - модуль исполнения, 3 - модуль управления.

Таким образом любой МФ состоит из этих трёх обязательных модулей.

· Модуль задания(описания) может включать кроме обязательного SIMULATE, стоящего на первом месте, необходимое для процесса ИМ число ОУ и ОО. Порядок их расположения в принципе не важен, так как симулятор располагает их в необходимой последовательности. Следует учесть, что операторы модуля описания не исполняются, а лишь задают параметры и структуру модели.

· Модуль исполнения включает необходимое число исполняемых ОБ. В модуле исполнения на первом месте стоит ОБ GENERATE, если в МФ предусмотрено исследование нескольких типов транзактов, то в каждой из параллельных ветвей МФ предусмотрен свой ОБ GENERATE, при использовании временного таймера также используется ОБ GENERATE. Число ОБ в модуле исполнения зависит от сложности и логики модели. Этот модуль является главным и в результате его исполнения собирается вся необходимая информация

· Модуль управления, начинается с ОУ START и заканчивается ОУ END, между ними может быть необходимое число ОУ, а в некоторых случаях и ОБ GENERATE.

Операторы этого модуля не исполняются, а задают команды на выполнение действий с модулем исполнения.

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



Дата добавления: 2021-07-22; просмотров: 355;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

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

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.011 сек.