Транзактно-ориентированные программы 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Транзактно-ориентированные программы



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

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

Например, моделирующими секциями могут быть:

- блоки организации очередей;

- блоки занятия устройства;

- блоки освобождения устройства;

- блоки направления транзакта в то или иное устройство;

- блоки образования и ликвидации транзактов.

 

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

 

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

 

В составе транзактно-ориентированной программы есть блоки-генераторы, создающие транзакты, и блоки-поглотители, которые ликвидируют все дошедшие до них транзакты.

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

 

Алгоритм работы транзактно-ориентированной программы включает следующие действия:

1. Подпрограмма просмотра генераторов проверяет условия создания новых транзактов и, в случае их выполнения, инициирует соответствующие блоки-генераторы транзактов. Генераторы создают транзакты и помещают их в очереди к соответствующим блокам.

 

2. Подпрограмма просмотра поглотителей просматривает очереди транзактов, выбирает те, которые завершили пребывание в модели системы, и инициирует блоки-поглотители для ликвидации этих транзактов. Ликвидированные транзакты регистрируются в блоках учета статистики.

 

3. После просмотра всех поглотителей начинает работу подпрограмма создания списка всех инициированных транзактов. Она просматривает списки (очереди) транзактов, поступивших на входы блоков, и выбирает те, которые на данный момент времени t0 должны быть инициированы. Кроме того, эта подпрограмма просматривает транзакты, обслуживаемые внутри блоков, и выбирает те, для которых время обслуживания закончилось и они должны выйти из блоков.

В результате этих действий создается список активных транзактов - вошедших в блоки и выходящих из блоков.

По окончании просмотра всех блоков управляющая секция проверяет условие «список инициированных транзактов пуст». Если он не пуст, управление передается подпрограмме завершения обслуживания транзактов. Она выбирает адрес блока, на котором завершилось обслуживание транзакта, определяет имя очереди к этому блоку, выбирает из нее очередной транзакт и закрепляет за ним освободившийся блок на время , где - время обслуживания блоком данного транзакта. Тем самым формируется момент t0+ будущего события – освобождения блока.

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

 

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

 

5. Как только список инициируемых транзактов оказывается пустым, подпрограмма сдвига модельного времени выбирает из списка будущих событий ближайшее по времени и делает момент появления этого события новым модельным временем t0. В списке будущих событий выбираются те транзакты, которые должны стать активными в этот момент t0, и образуют новый список инициированных транзактов. Затем проверяется условие окончания моделирования. Если оно не выполняется, то управление передается вновь подпрограмме просмотра блоков генератора (см. п.1). При выполнении условия создания новых транзактов список инициированных транзактов дополняется вновь созданными, и алгоритм работы программы повторяется (начинается с п.2).

Если время моделирования заканчивается, то выдается статистика по всем очередям и временам обслуживания транзактов.

 

9. Процессо-ориентированные программы

Процессо-ориентированные программы являются дальнейшим развитием транзактно-ориентированных программ. Вместо инициации транзакта в процессо-ориентированных программах инициируются процессы.

 

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

Активность в процессо-ориентированных программах – это выполнение какого-либо процесса.

Процессо-ориентированные программы используются при моделировании работы вычислительных систем, состоящих из устройств, выполняющих отдельные процессы.

 

10. Агрегатно-ориентированные программы

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

Если в процессо-ориентированных программах роль активностей играют процессы, то в агрегатно-ориентированных программах роль активностей играют последовательности функциональных действий, выполняемых отдельными агрегатами. При этом основную роль играет не изменение временн о й координаты (как в процессо-ориентированных программах), а характер совершаемых агрегатами функциональных действий.

По существу, агрегатно-ориентированные программы являются программами функционального моделирования.

 



Поделиться:


Последнее изменение этой страницы: 2017-02-19; просмотров: 213; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.117.107.90 (0.005 с.)