В блоці ASSIGN параметру Kkd записується випадковий час обслуговування, який обчислюється з використання вбудованого генератора експоненціального розподілу. Якщо ОКП Kan1 вільний, то блок GATE впускає транзакт в блок SEIZE, і ОКП затримується на час P$Kkd. Якщо ж у момент надходження транзакту ОКП зайнятий, то блок GATE скеровує транзакт в блок LINK з міткою Mit2, який вводить транзакт у список користувача Mash. Транзакти впорядковуються за зростанням часу обслуговування, записаного в параметрі P$Kkd. Блок UNLINK після звільнення ОКП виводить з початку списку транзакт з найменшим часом обслуговування, забезпечуючи тим самим задану дисципліну.
Блоки LINK і UNLINK надають можливість користувачу формувати свої списки у динаміці незалежно від списків затримування, які автоматично керують системою GPSS World. Наявність цих блоків не вимагає використання блоків QUEUE – DEPART для збирання статистики про черги, оскільки ці статистичні дані можна отримати у списку користувача.
Контрольні запитання та завдання
1. До яких об’єктів апаратної категорії належать одноканальні пристрої, і якими основними властивостями вони характеризуються?
|
|
2. За допомогою якого блоку транзакти входять в модель? Який його формат запису і що означають його операнди?
3. Згенеруйте надходження в модель 10 транзактів з інтервалом в 50 од. часу і з відхиленням 5 од. часу.
4. Скільки блоків TERMINATE може бути у моделі і скільки – в якості лічильника завершення? Наведіть блок-діаграму керування часом моделювання.
5. Який блок відповідає за присвоєння і зміну параметрів транзактів?
6. Змоделюйте присвоєння другому параметру транзакта числа 50, а від параметра з іменем Buf віднімання поточної довжини черги з номером 1.
7. Які блоки апаратної категорії відповідають за зайняття і звільнення одноканального пристрою?
8. Змоделюйте затримку транзакту в каналі обслуговування з іменем Kan-1 протягом 75±15 од. часу за допомогою блоків SEIZE, ADVANCE і RELEASE.
9. Яким блоком можна перевірити стан каналів у моделі (зайнятий він чи ні)?
10. Змоделюйте перехід від одного каналу обслуговування до іншого у випадку, коли перший з них зайнятий.
11. Які блоки мови програмування GPSS призначені для збору статистичних даних про об’єкти моделювання?
12. В одноканальну систему масового обслуговування надходять замовлення кожних 50±10 од. часу. Всі вони потрапляють в чергу і чекають звільнення каналу обслуговування. Середній час оброблення замовлення становить 40±5 од. часу. Після обслуговування замовлення залишають систему. Змоделюйте роботу такої системи для опрацювання 100 замовлень.
13. Які Ви знаєте блоки для змінним маршрутів руху транзактів у моделі? Дайте коротку характеристику їхніх режимів роботи.
|
|
14. Змоделюйте ситуацію, коли черговий транзакт повинен зайняти одноканальний пристрій, перервавши обслуговування попереднього транзакта.
15. Які блоки мови GPSS передбачені для моделювання несправностей (переведення в недоступний стан) одноканальних пристроїв?
16. Збільшіть (зменшіть) довжину черги з номером 5 на 7 одиниць.
17. Наведіть фрагмент програми, яка показує зайняття транзактом пристрою. Транзакт займає усі вільні канали пристрою.
18. Наведіть фрагмент програми, яка моделює затримування транзактів у пристрої з часом затримування, рівномірно розподіленим в інтервалі А ± В, де А і В значення параметрів ОТР1 і ОТР2.
19. Параметру п’ятого транзакту присвойте значення 4.
20. Транзакт займає пристрій, номер якого задається п’ятим номером транзакта. Час обслуговування у пристрої задається параметром ТІМЕ. Наведіть фрагмент відповідної програми.
21. В одноканаьну СМО надходить потік вимог, розподілений за пуассонівським законом з інтенсивністю n хв-1. Час обслуговування однієї вимоги становить m ± k сек. Навести фрагмент програми для збирання статитстичної інформації про час перебування вимог у системі.
22. У довідкове бюро на залізничному вокзалі звертаються клієнти через кожні 20 ± 8 сек, яких обслуговують п’ять операторів. Тривалість обслуговування становить 100 ± 20 сек. Навести фрагмент програми для збирання статистичної інформації про довжину черги.
“Якщо відлагодження програми – процес вилучення помилок, тоді програмування має бути процесом їх внесення”
(Е. Дейкстра)