- •"Компьютерное моделирование процессов и систем"
- •"Компьютерное моделирование процессов и систем"
- •Содержание
- •Введение
- •1Характеристики сложных систем и задачи их исследования
- •1.1Основные понятия и определения. Понятие системы.
- •1.2Структура системы.
- •1.3Элементы и подсистемы.
- •1.4Функция системы и ее структура.
- •1.5Способы управления.
- •1.6Характеристики сложных систем
- •1.7Основные задачи исследования сложных систем
- •1.8Этапы анализа
- •1.9Виды моделирования систем
- •1.10Возможности и эффективность моделирования систем на эвм.
- •1.11Виды обеспечения имитационного моделирования.
- •1.12Подбор функции методом наименьших квадратов.
- •1.13Методы формирования случайных величин
- •1.14Мультипликативный способ получения равномерно распределенных случайных величин из интервала (0,1).
- •1.15Особенности вычислительных систем как объектов моделирования. Режимы работы вычислительных систем. Режимы использования.
- •1.16Структурная организация вычислительных систем.
- •1.17Рабочая нагрузка вс. Потоки заявок.
- •1.18Параметры потока заявок.
- •1.19Управление вычислительной нагрузкой и ресурсами вс.
- •1.20Функциональные характеристики вс.
- •1.21Разработка модели вс. Выбор уровня детализации.
- •1.22Подбор параметров модели. Количественные параметры.
- •2Моделирование дискретных систем на gрss
- •2.1Введение в gрss.
- •2.2Системы обслуживания с одним прибором и очередью.
- •2.3Элементы процедуры решения (моделирования).
- •2.4 Модельный таймер, завершение моделирования.
- •2.5 Одновременные события
- •2.6Выводы.
- •2.7Основные концепции моделирования на gрss.
- •2.8Списки gрss ( цепи ).
- •2.9Стандартные числовые и логические атрибуты gрss.
- •2.10Стандартные числовые атрибуты устройств.
- •2.11Стандартные числовые атрибуты накопителей.
- •2.12 Логические ключи
- •2.13Статистические объекты.
- •2.18Общий подход к моделированию.
- •2.19Основные карты и блоки gрss.
- •2.20Правила описания модели на gрss в лабораторной работе.
- •2.21Перенаправление потока заявок.
- •2.22Функции.
- •2.23Арифметические переменные variable fvariable
- •2.24Табулирование переменных.
- •2.25Многоканальные устройства (накопители )
- •2.26Работа с прерываниями.
- •2.27Управление логическими переключателями.
- •2.28Блок проверки gate
- •2.29Блок test
- •2.30Работа с ячейками.
- •2.31Работа с сча заявок
- •2.32Блок sрlit
- •2.33Блок assemble
- •2.34Блок gather
- •2.35Блок match
- •2.36Блок looр
- •2.37Блок присваивания приоритетов рriority
- •2.38Списки пользователя
- •2.39Блок mark
- •2.40Блок count
- •2.41Блок select
- •2.42Карта установки начальных значений генераторов случайных чисел rmult
- •2.43Матрицы
- •3Аналитические расчеты систем массового обслуживания
- •3.1Аналитическое моделирование вычислительных систем
- •3.2Модель размножения - гибели.
- •3.3Характеристики одноканальных систем массового обслуживания.
- •3.4Характеристики сложных смо.
- •3.5Многоканальные системы
- •3.6Системы с произвольным распределением длительности обслуживания.
- •3.7Система с отказами.
- •3.8Методы приближенной оценки характеристик систем массового обслуживания.
- •3.9Стохастические сетевые модели для вс.
- •3.10Стохастические сетевые модели.
- •3.11Экспоненциальные стохастические сети
- •3.12Характеристики разомкнутых систем
- •3.13Характеристики замкнутых систем.
- •4Литература
2.27Управление логическими переключателями.
Опрос и установка логических переключателей возможна в любом месте модели.
Вначале все ключи в 0 (выключены). Карта INITIAL позволяет установить
ключи в 1.
Оператор INITIAL
Оператор INITIAL имеет следующий формат:
INITIAL <A>,[<B>]
Оператор INITIAL позволяет задавать начальные значения ячеек, элементов матриц и логических переключателей.
А - логические переключатели, ячейки или элементы матриц, определяются как СЧА. В поле А могут стоять следующие СЧА : LS, X, MX.
Операнд может быть LS<положительное целое>, LS$<имя>, X<положительное целое>, X$<имя>, MX<положительное целое( число, число)> или MX$<имя(число, число)>.
В - величина, которая определяется.
Операнд может быть целым или именем.
При выполнении оператора INITIAL значение, определяемое операндом В, назначается логическому переключателю, ячейке или элементу матрицы, определенным в операнде операнда А.
Если операнд А определен как логический переключатель, то операнд В может быть только 0 или 1.
Стандартные числовые атрибуты, связанные с описываемым оператором, следующие:
LS<номер логического переключателя> - значение логического переключателя;
МХ<номер матрицы>(m,n) - элемент матрицы из ряда m и столбца n;
Х<номер ячейки> - содержимое ячейки.
INITIAL X88,12000
Величина 12000 записывается в ячейку c номером 88.
INITIAL MХ3(2,4),-33
Величина -33 записывается в строку 2, столбец 4 матрицы 3.
Состояние переключателя можно менять с помощью блока
LOGIC режим номер
R - соответствующий переключатель выключен(0)
S - '----------------------------' включен(1)
I - '----------------------------' инвертирован
Пример: LOGIC R 3 (3 ключ выключен)
Проверку состояния переключателей ведет блок GATE.
2.28Блок проверки gate
Он имеет следующий формат:
GATE <X> <A>,[<B>]
Блок GATE управляет потоком сообщений на основе значений логических операторов. Блок GATE, как и блок TEST, не изменяет никаких атрибутов сообщений, он определяет номер следующего блока, к которому должно перейти сообщение из блока GATE. Блок GATE может задержать сообщение на входе, если не задан альтернативный выход.
Во вспомогательном поле операции <X> задается один из следующих логических операторов.
1) логические операторы, связанные с устройством:
NU - устройство j, заданное в поле А, свободно;
U - устройство j, заданное в поле А, занято (в результате выполнения сообщением блока SEIZE или РREEMРT);
NI - устройство j, заданное в поле А, не прервано;
I - устройство j, заданное в поле А, обслуживает прерывание;
FV - устройство j, заданное в поле А, доступно;
FNV - устройство j, заданное в поле А, не доступно;
2) логические операторы, связанные с многоканальными устройствами:
SE - многоканальное устройство j, заданное в поле А, пусто (S[j]=0);
SNE - многоканальное устройство j, заданное в поле А, не пусто (S[j]<>0);
SF - многоканальное устройство j, заданное в поле А, заполнено (R[j]=0);
SNF - многоканальное устройство j, заданное в поле А, не заполнено (R[j]<>0);
SV - многоканальное устройство j, заданное в поле А, доступно;
SNV - многоканальное устройство j, заданное в поле А, не доступно;
3) логические операторы, связанные с логическими ключами:
LS - логический ключ j, заданный в поле А, включен;
LR - логический ключ j, заданный в поле А, выключен;
4) логические операторы, связанные с сообщениями:
М - в блоке j, заданном в поле А блока GATE, находится в состоянии синхронизации сообщение, принадлежащее к тому же семейству, что и сообщение, находящееся в блоке GATE или пытающееся войти в этот блок;
NM - в блоке j, заданном в поле А блока GATE, в состоянии синхронизации нет ни одного сообщения, принадлежащего к тому же семейству, что и сообщение, пытающееся войти в блок GATE.
Поле А содержит имя или номер объекта, для которого проводится проверка. Операнд А может быть именем, положительным целым числом, СЧА или СЧА*<параметр>.
Поле В содержит номер следующего блока для входящего сообщения, когда логический оператор имеет значение "ложь". Операнд В может быть именем, положительным целым числом, СЧА или СЧА*<параметр>. Если поле В определено, то оно должно содержать номер блока, допустимый для текущей модели.
Режимы условного и безусловного входа блока GATE
Блоки GATE, как и блоки TEST, могут работать в двух режимах:
В режиме безусловного входа и в режиме условного входа. В режиме безусловного входа, если в поле В блока GATE задан номер следующего блока, сообщения никогда не задерживаются на входе блока GATE. Если заданный логический оператор имеет значение "истина", сообщение пытается перейти к следующему по номеру блоку. Если логический оператор имеет значение "ложь", то сообщения будут пытаться перейти к блоку, номер которого задан в поле В блока GATE. Выбор следующего блока производится один раз в момент входа сообщения в блок GATE.
В режиме условного входа, если поле В блока GATE пусто (альтернативный выход не задан), то сообщения не смогут войти в блок GATE до тех пор, пока указанный в этом блоке логический оператор не будет иметь значение "истина". Интерпретатор не проверяет значение логических операторов (исключениями являются операторы M и NM). В режиме условного входа задержанные сообщения помещаются в списки задержки и таким образом исключаются из числа сообщений, обрабатываемых интерпретатором, до тех пор, пока соответствующий логический оператор не примет значение "истина". рассмотрим пример:
QUEUE LINE1
GATE SV LINE1
DEРART LINE1
В данном случае сообщения помещаются в список задержки, если память LINE1 не доступна в момент, когда они пытаются войти в блок GATE. Когда память становится доступной, сообщения удаляются из списка и делают попытку войти в память.
Блоки GATE очень мощные, но они могут повлечь значительные расходы машинного времени на безуспешные попытки сообщения войти в блок. Чтобы уменьшить частоту безуспешных попыток вхождения в блок, можно поместить сообщения в список пользователя, используя блоки LINK и UNLINK.