
- •Моделювання систем
- •Передмова
- •Моделі процесів і систем
- •Класифікація моделей
- •Основні визначення та класифікація систем масового обслуговування
- •Характеристики систем масового обслуговування
- •Вхідний потік вимог
- •Стратегії керування потоками вимог
- •Класифікація систем масового обслуговування
- •Метод статистичних випробовувань
- •Генератори випадкових чисел
- •Моделювання випадкових подій та дискретних випадкових величин
- •Моделювання неперервних випадкових величин
- •Моделювання нормально-розподілених випадкових величин
- •Моделювання випадкових векторів
- •Моделювання випадкових функцій
- •Статистична обробка результатів моделювання
- •Визначення кількості реалізацій під час моделювання випадкових величин
- •Основне меню gpss World
- •Меню File
- •Меню Edit
- •Панель інструментів gpss World
- •Вікно моделі у системі gpss World
- •Інтерактивний перегляд значень виразів
- •Налаштування параметрів моделювання
- •4.1. Основне меню gpss World
- •4.2. Подання моделей у вигляді блок-діаграм
- •4.3. Основні складові системи gpssw
- •4.4. Об'єкти обчислювальної категорії
- •4.4.1. Константи
- •4.4.2. Системні числові атрибути
- •4.4.3. Арифметичні і логічні оператори
- •4.4.4. Бібліотечні математичні функції
- •4.4.5. Змінні користувача
- •4.4.6. Вирази в операторах gpss
- •4.4.7. Зберігаючі комірки
- •4.4.8. Матриці зберігаючих комірок. Оголошення та ініціалізація матриць
- •4.4.9. Арифметичні змінні й арифметичні вирази
- •4.4.10. Булеві змінні
- •4.4.11. Типи функцій
- •5.1. Введення транзактів у модель і вилучення їх із неї
- •5.2. Блоки для зміни значень параметрів транзактів
- •5.3. Блоки апаратної категорії зайняття та звільнення одноканальних пристроїв
- •5.4. Блоки перевірки стану та передавання керування в одноканальних пристроях
- •5.5. Блоки статистичної категорії
- •5.6. Блоки для зміни послідовності руху транзактів у моделі
- •5.7. Блоки апаратної категорії для переривань одноканальних пристроїв
- •5.8. Блоки апаратної категорії для переведення одноканальних пристроїв у стан недоступності
- •5.9. Створення і застосування списків користувача
- •Основні етапи моделювання у системі gpssw
- •Команди gpss World
- •Інтерактивні можливості gpss World
- •Відлагодження моделей у gpss World
- •Блоки зайняття та звільнення багатоканальних пристроїв
- •Блоки апаратної категорії для переведення багатоканальних пристроїв у стан недоступності та відновлення доступності
- •Блоки перевірки стану багатоканальних пристрів
- •Моделювання перемикачів
- •Основні елементи мови
- •Побудова виразів
- •Plus-оператори та їх призначення
- •Вбудована бібліотека процедур
- •Генератори випадкових чисел
- •Реалізація методу Ньютона для розв’язування нелінійних рівнянь за допомогою мови Plus
- •Налагодження Plus-процедур
- •Команда integrate і блок integration для моделювання неперервних систем
- •Використання plus-процедур для моделювання неперервних систем
- •Використання функцій в імітаційних моделях
- •Генерування випадкових чисел для дискретних рівномірних розподілів
- •Генерування випадкових чисел для дискретних нерівномірних розподілів
- •Генерування випадкових чисел для неперервного рівномірного розподілу
- •Генерування випадкових чисел для неперервних нерівномірних розподілів
- •Функції типу e, l і м
- •9.1. Основні відомості з теорії планування експериментів
- •9.1.1. Повний факторний експеримент
- •Оцінювання точності результатів моделювання
- •Дисперсійний аналіз
- •Однофакторний дисперсійний аналіз
- •9.2.2. Двофакторний дисперсійний аналіз
- •9.3. Технологія дисперсійного аналізу у gpss World
- •9.4. Технологія регресійного аналізу у gpss World
- •9.5. Організація експериментів користувача у gpss World
- •Initial Rezult_tf,unspecified ;Ініціалізація матриці результатів
- •Загальні положення
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання
- •Контрольні запитання
- •Загальні положення
- •Завдання для виконання роботи
- •Контрольні запитання
- •Загальні положення
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання
- •Контрольні запитання
- •Загальні положення
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання
- •Контрольні запитання
- •Загальні положення
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання одноканальних розімкнутих смо
- •Індивідуальні завдання для моделювання одноканальних замкнутих смо
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання багатоканальних розімкнутих смо
- •Індивідуальні завдання для моделювання багатоканальних замкнутих смо
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання роботи транспортного конвеєра
- •Індивідуальні завдання для моделювання роботи ділянки цеху
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання роботи еом для оброблення завдань з різними пріоритетами
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання роботи вузла комутації повідомлень
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для моделювання поширення вірусу на системному диску
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для проведення дисперсійного аналізу для дослідження вагомості впливу змінних користувача на об’єкт моделі
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання для розроблення експерименту користувача
- •Контрольні запитання
- •Загальні відомості
- •Завдання для виконання роботи
- •Індивідуальні завдання проведення регресійного аналізу для оптимізації і кількісного прогнозу поведінки системи
- •Контрольні запитання
- •Елементи стандартного звіту
- •Загальна інформація про результати роботи моделі
- •Інформація про імена
- •Інформація про блоки
- •Інформація про об’єкти типу «пристрій»
- •Інформація про об’єкти типу «черга»
- •Інформація про об’єкти типу «багатоканальний пристрій»
- •Інформація про таблиці
- •Інформація про списки користувача
- •Табличні значення критеріїв
- •Значення t-критерію Ст’юдента
5.8. Блоки апаратної категорії для переведення одноканальних пристроїв у стан недоступності
В GPSS World передбачені блоки, що реалізують недоступність ОКП протягом певного часу і переводять пристрій у режим доступності. Використання цих блоків адекватно відображають статистику роботи ОКП. Тут йдеться про наступне. Наприклад, для моделювання несправностей можна використовувати й режим переривання (PREEMPT). Однак транзакти, що викликають переривання, враховуються в статистиці як і транзакти, обслужені при реальному функціонуванні ОКП. Це зумовлює недостовірність статистики роботи ОКП.
Для цього використовуються блоки FUNAVAIL і FAVAIL (символ F FACILITIES означає ОКП, UNAVAIL – недоступний). Блок FUNAVAIL створює недоступність пристрою до цих пір, поки у дію не вступить блок FAVAIL. Формат блоку:
FUNAVAIL А,[В],[С],[D],[E],[F],[G],[H]
Блок робить недоступним ОКП з назвою або номером, що вказується операндом А.
Операндом В задаються режими оброблення транзакта, що займає ОКП в момент переведення його в недоступний стан:
СО – режим продовження: продовжити оброблення транзакта, що займає ОКП під час недоступності;
RE – режим видалення: видалити й скерувати транзакт, що займає ОКП до блоку, мітка якого повинна бути зазначена операндом С;
за замовчуванням – перервати оброблення й помістити в список переривань ОКП; після відновлення доступності цей транзакт може зайняти ОКП і завершити обслуговуватися.
Операнд С – мітка блоку, у який спрямовується у режимі видалення транзакт, що займав ОКП в момент переведення його в недоступний стан.
Операнд D – номер або назва параметра транзакта, що займав ОКП в момент переведення його в недоступний стан. Якщо він буде вилучений (режим RE), то у цей параметр буде записаний час, що залишився вилученому транзакту до кінця обслуговування.
Операндом Е задаються режими оброблення транзактів, обслуговування яких на даному ОКП було раніше перерване до моменту переведення ОКП в недоступний стан (транзакти знаходяться у списку переривань):
СО – режим продовження: продовжити роботу ОКП під час недоступності – обслуговувати транзакти зі списку переривань;
RE – режим видалення: видалити й скерувати транзакти зі списку переривань до нового блоку, мітка якого зазначена операндом F;
за замовчуванням – залишити раніше перервані транзакти в списку переривань ОКП ій заборонити їм займати його під час недоступності.
Операнд F вказує мітку блоку, до якого будуть спрямовані транзакти зі списку переривань ОКП. Для них немає можливості занесення в їхні параметри часу, що залишився до кінця обслуговування. Операнд F може використовуватися й тоді, коли відсутній операнд Е (за замовчуванням). У цьому випадку для переміщених до нового блоку транзактів переривання обслуговування зберігається.
Операндом G задаються режими оброблення транзактів, що перебувають до моменту переведення ОКП в недоступний стан у списку відтермінованих переривань (тих, що очікують виконання з перериванням і знаходяться у списку затримування:
СО – режим продовження: продовжити роботу ОКП під час недоступності – обслуговувати транзакти зі списку відтермінованих переривань і списку затримування;
RE – режим видалення: видалити й скерувати транзакти зі списку відтермінованих переривань і списку затримування до нового блоку, мітка якого зазначена операндом Н;
за замовчуванням – залишити транзакти в списку відкладених переривань і списку затримування ОКП й заборонити їм займати його під час недоступності.
Операндом Н вказується мітка нового блоку, до якого в режимі видалення (RE) скеровуються транзакти зі списку відтермінованих переривань і списку затримування. Невикористання операнда G зумовлює відсутність й операнда Н.
Блок FAVAIL змінює стан ОКП на доступний, тобто відновлює звичайний режим входження транзактів в ОКП:
FAVAIL A
Всі транзакти, що очікують доступного стану ОКП, зазначеного операндом А, активізуються й можуть спробувати зайняти його.
Перевірка стану ОКП в режимі недоступності здійснюється блоком GATE.
Умова перевірки задається одним із наступних умовних операторів X:
FNV – ОКП, заданий операндом А, недоступний;
FV – ОКП, заданий операндом А, доступний.
Наприклад:
GATE FNV Krosh
GATE FV (FN$Rasp-X$Col)
GATE FNV Print,Mod
У першому прикладі блок GATE пропустить транзакт, коли ОКП Krosh буде недоступний. У другому прикладі транзакт пройде до наступного блоку, коли доступний ОКП з номером визначеним як результат обчислення й наступного заокруглення до цілого виразу в дужках (FN$Rasp-X$Col). У третьому прикладі у випадку доступності ОКП Print транзакт буде скерований до блоку з міткою Udal.
Рзглянемо приклад, який представляє сегмент імітації виходу з ладу і встановлення працездатності ОКП:
GENERATE (Exponential (24,0,350)) ;Джерело транзактів
FUNAVAIL Cpu1,RE,Ter1,,RE,Ter2,RE,Ter3 ;Переведення в недоступність
ADVANCE (Normal(11,15,4)) ;Відновлення доступності
FAVAIL Cpu1 ;Переведення в доступний стан
TERMINATE
Блок GENERATE генерує транзакти через випадкові інтервали часу. Транзакти входять в блок FUNAVAIL і переводять ОКП Cpu1 в недоступний стан, що відповідає виходу із ладу. Всі транзакти, що перебували до цього моменту у списку зупинок ОКП Cpu1, а також транзакт, що займав цей ОКП (якщо такий був) видаляються. Блок ADVANCE імітує процес відновлення, а блок FAVAIL переводить ОКП в доступний стан, тобто фіксує момент переходу в справний стан після ремонту.