Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Содержание сайт... 65535
Вызов хранимых ... 65535
Эмулятор микроп... 65535
Приложение «Про... 64175
Организация зап... 62784
Оператор выбора... 62634
Invision Power ... 62200
Подключение Mic... 61006
Модуль Forms 59911
Создание отчето... 59836
ТЕХНОЛОГИИ ДОСТ... 56038
Программируемая... 55552
Пример работы с... 53153
Имитационное мо... 51427
21 ошибка прогр... 46413
Реклама
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

Пользователей: 13,057
новичок: Aidar
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование процесса обеспечивающего надежность функционирования АСУ Т...
Моделирование работы ЭВМ на GPSS + Пояснительная записка
База данных электронного документооборота на Delphi + бд Intebase

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Списки


Транзакты GPSS хранятся в списках. Существует пять видов списков в одном
из которых в любой момент времени может находиться транзакт: 1) текущих событии; 2)
будущих событий; 3) пользователя; 4) прерываний; 5) синхронизируемых транзактов.
В списке текущих событий транзакты расположены в порядке убывания приоритета;
внутри класса транзакты с одинаковыми приоритетами располагаются в порядке
поступления их в список Каждый транзакт в списке текущих событий может находиться
либо в активном состоянии (т. е. просматриваться в данный момент условного времени),
либо в состоянии задержки.
Если транзакт находится в активном состоянии, то процедура, осуществляющая
просмотр, пытается продвигать его к следующим блокам диаграммы. Если движение
транзакта блокируется каким-либо объектом аппаратной категории, т. е. вход в
следующий блок выполнить невозможно, то он переводится в состояние задержки.
Часть списка текущих событий для транзактов ожидающих изменения состояния
объектов аппаратной категории, представляют собой списки задержки. Существует
четыре вида списков, связанных с устройствами (устройство занято, свободно,
обслуживает прерывание, работает без прерываний), пять видов, связанных с памятями
(память заполнена, не заполнена, пуста, не пуста, транзакт может войти в память), и два
— с логическими ключами (ключ установлен, ключ сброшен).
Таким образом, заблокированный транзакт (например, блоке SEIZE из-за занятости
устройства) будет переведен в состояние задержки и помещен в список задержки
«устройство занято» для данного устройства. Когда другой транзакт освободит
устройство, все транзакты списка задержки «устройство занято» для данного устройства
будут переведены в активное состояние, и симулятор GPSS отметит, что произошло
изменение состояния устройства. Как только завершается обработка активного транзакта,
запускается процедура просмотра, и все транзакты, получившие возможность двигаться, в
результате изменения состояния устройства будут продвинуты. То же происходит с
любым из перечисленных выше списков задержки в момент, когда соответственно
изменяется состояние объекта аппаратной категории.
Пользователю следует учитывать, что для транзактов, заблокированных в блоке TEST
или пытающихся выйти из блока TRANSFER (в режимах BOTH, ALL), списков задержки
не существует. В этих случаях транзакты остаются в активном состоянии в списке
текущих событий и участвуют во всех просмотрах.
Список будущих событий содержит транзакты, у которых намеченное время начала
движения больше, чем текущее. Такие транзакты размещаются в списке строго в порядке
возрастания времени начала движения, т. е. транзакт, время начала движения которого
является ближайшим к значению текущего времени, состоит в списке первым, а транзакт
с максимальным временем начала движения — последним. Приоритеты не влияют на
порядок транзактов в этом списке.
Список пользователя содержит транзакты, удаленные пользователем из списка
текущих транзактов с помощью блока LINK.
Список прерываний содержит транзакты, обслуживание которых прервано на одном
или более устройствах. Транзакты в списке прерываний расположены в порядке
поступления. Этот список никогда не обрабатывается как списковая структура; транзакты
по мере надобности заносятся в этот список и извлекаются из него. Все транзакты,
захватившие устройства (пройдя блок SEIZE) и прерванные другими транзактами
(прошедшими блок PREEMPT), помещаются в этот список до тех пор, пока не будут
сняты все условия прерываний. Если условия прерывания не снимаются, транзакт может
оставаться в списке прерывании неопределенно долго.
Список синхронизируемых транзактов содержит транзакты, которые ожидают в
блоках ASSEMBLE или GATHER прихода заданного числа транзактов из той же группы:
находятся в блоках MATCH в ожидании поступления транзакта той же группы на
сопряженный блок MATCH. Этот список также никогда не обрабатывается как списковая
структура и представляет собой поднабор набора транзактов.
Опубликовал Kest December 14 2009 23:22:37 · 0 Комментариев · 5077 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
JanComp
ЯЗЫК ПРОГРАММИРОВ...
Введение в станда...
Delphi и технолог...
Blib [Исходник на...
FreeSMS v1.3.1
Task Shedule
Программирование ...
Секреты программи...
TMS
VksButton
Billenium Effects...
В.Понамарев - COM...
Dynamic Titles дл...
Animated Menus
BDEPack
Image Browser [Ис...
Шкрыль А. - Разра...
Adapter (пример D...
Preview

Топ загрузок
Приложение Клие... 100366
Delphi 7 Enterp... 82143
Converter AMR<-... 20046
Borland C++Buil... 11045
GPSS World Stud... 10406
Borland Delphi ... 8032
Turbo Pascal fo... 6959
Visual Studio 2... 4961
Калькулятор [Ис... 4259
FreeSMS v1.3.1 3508
Случайные статьи
5. КОС отсылает эт...
Процесс создания и...
Класс TMoney с кон...
Оригинальная реали...
Азартные игры Gmsd...
Файловые потоки бы...
Анализ общей линей...
Методы поиска реше...
Добавление узлов к...
Введение в PHP
Выявление и компен...
Создание отчетов (...
Отправка POST запр...
Абстрактные типы д...
Есть две причины, ...
Денежные слоты
Поля класса
Наука в СССР
Совместимость язык...
Алгоритм inner_pro...
КРАТКИЙ ОБЗОР КОСМ...
Определение параме...
Прямой городской н...
Генерирование сигн...
MediaDesc
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?