
- •6.091 “Комп'ютерна інженерія”
- •1 Моделювання одноканальних систем масового обслуговування та випадкових величин. Застосування випадкових величин для моделювання часу
- •1.1 Мета роботи
- •1.2 Методичні вказівки по організації самостійної роботи студентів
- •1.2.1 Створення та видалення потоку транзактів у моделі
- •1.2.2 Керування тривалістю моделювання
- •1.2.3 Імітація обслуговуючих пристроїв в gpss
- •1.2.4 Накопичення статистичної інформації по чергам транзактів перед пристроями
- •1.2.5 Призначення та використання функцій в gpss
- •1.2.6 Призначення та використання змінних в gpss
- •1.2.7 Таблиці в gpss
- •1.2.7.1 Додаткові режими використання таблиць
- •1.2.8 Перерозподіл потоків транзактів в gpss-моделях
- •1.2.9 Використання засобів мови gpss для моделювання випадкових величин
- •1.2.10 Застосування керуючих команд gpss для зміни параметрів моделі та її дослідження в стаціонарному режимі
- •1.3 Порядок виконання лабораторної роботи
- •1.5 Контрольні питання
- •2 Моделювання багатОканальних пристроїв іЗ перерозподілом потоКів заявок
- •2.1 Мета роботи
- •2.2 Методичні вказівки по організації самостійної роботи студентів
- •2.2.1 Моделювання багатоканальних пристроїв (бкп)
- •2.2.2 Організація розгалужень і циклів потоків транзактів
- •2.2.3 Моделювання переривань
- •2.2.4 Операції з параметрами транзактів
- •2.3 Порядок виконання лабораторної роботи
- •2.5 Контрольні питання
- •3 Моделювання систем масового обслуговування з синхронізацією руху транзактів
- •3.1 Мета роботи
- •3.2 Методичні вказівки по організації самостійної роботи студентів
- •3.2.1 Блоки gpss для копіювання транзактів
- •3.2.2 Блоки gpss для синхронізації руху транзактів
- •3.2.3 Організація логічних ключів
- •3.2.4 Використання блоку gate
- •3.3 Приклади використання блоків синхронізації руху транзактів
- •3.3.1 Приклад №1
- •3.3.2 Приклад №2
- •3.4 Порядок виконання роботи
- •3.6 Контрольні питання
- •4 Моделювання складних систем
- •4.1 Мета роботи
- •4.2 Методичні вказівки по організації самостійної роботи студентів
- •4.3 Порядок виконання роботи
- •Додаток а система моделювання gpss world
- •Додаток б перелік стандартних числових атрибутів gpss
- •Перелік посилань
- •6.091 “Комп'ютерна інженерія”
- •61166 Харків, пр. Леніна 14
3 Моделювання систем масового обслуговування з синхронізацією руху транзактів
3.1 Мета роботи
Вивчення та застосування засобів імітаційної системи GPSS World для моделювання складних обчислювальних структур та пріоритетних дисциплін обслуговування.
3.2 Методичні вказівки по організації самостійної роботи студентів
При підготовці до лабораторної роботи необхідно вивчити побудову математичних і програмних стохастичних мережевих моделей ОС, а також пріоритетних дисциплін обслуговування [3 – 4].
3.2.1 Блоки gpss для копіювання транзактів
Блок SPLIT, як і блок GENERATE, призначений для створення транзактів.
SPLIT A,B,C
Операнд А задає кількість нових транзактів, які будуть створені з транзакту, що надійшов до блоку SPLIT. Значенням операнду А може бути число або СЧА. Операнд В задає номер блоку (або його мітку), до якого будуть направлятися всі нові транзакти. В операнді С можна задати номер параметра транзакта, у якому буде збережено порядковий номер транзакта серед копій одного ансамблю.
На відміну від блоку GENERATE, який створює нові незалежні транзакти, блок SPLIT лише генерує задане число копій транзакта, що потрапив до цього блоку. Одержані копії ідентичні первинному транзакту. Після виходу з блоку SPLIT первинний транзакт направляється до наступного блоку в моделі, а всі його копії пересилаються за адресою, зазначеною в полі В. Таким чином, якщо в полі А задане число i, то з блоку вийдуть i+1 транзактів. Первинний транзакт і його копії є рівноправними й можуть проходити знову через будь-яку кількість блоків SPLIT.
Всі транзакти, отримані копіюванням з якогось транзакту, а також копії цих копій належать до одного ансамблю. До цього ансамблю транзактів можна застосовувати блоки GPSS для операцій з ансамблями, наприклад, MATCH, ASSEMBLE, або GATHER. Кількість транзактів в ансамблі не обмежується. Кожен транзакт, створений у блоці GENERATE, є окремим ансамблем транзактів. Таким чином, кількість ансамблів у системі є довільною, й ансамбль існує доти, поки йому належить хоч один транзакт. Номер ансамблю привласнюється транзактові після його виходу з блока GENERATE. Блок
ADOPT A
змінює приналежність транзакта з одного ансамблю до іншого. В полі А вказується номер нового ансамблю. Ансамбль транзактів може бути пронумерований. Для цього в полі В блоку SPLIT має бути записаний номер параметра транзакту, у якому буде проводитися нумерація. Якщо у первинному транзакті значення цього параметра дорівнювало k, то після перенумерації первинний транзакт одержить значення k+1, його перша копія – k+2 і т.д..
Так як транзакти можуть мати параметри різних типів, то необхідно використовувати індекс для вказання типу параметра, який береться при об'єднанні транзактів в серії. Допускаються індекси: PH – параметр формату “півслово”; PF – параметр формату “слово”; PB – параметр формату “байт”. Вихідний транзакт і його копії поєднуються в серії по заданому параметру. В наведеному нижче прикладі розглядається випадок, коли параметр 10 формату “байт” має значення N при вході транзакта в блок SPLIT. При виході з блоку SPLIT значення 10-го параметру первинного транзакту стане N+1, а значення 10-го параметру транзактів-копій відповідно будуть: N+2, ... .
SPLIT 3,30,20
У даному прикладі щоразу, коли транзакт надходить до блоку SPLIT, він генерує 3 нових транзакти, всі вони мають однаковий пріоритет, значення MarkTime і всі значення такі, як і в первинного транзакту, крім параметру 20.