№ типа |
Минимальное время появления |
Максимальное время появления |
Минимальное время обслуживания |
Максимальное время обслуживания |
1 |
10 |
12,5 |
25,1 |
28,3 |
2 |
13,7 |
28,5 |
12,3 |
15,7 |
3 |
30,3 |
45 |
10 |
11 |
4 |
42,2 |
58,6 |
12,6 |
15,4 |
5 |
47,6 |
55,4 |
15,3 |
17,2 |
6 |
52,3 |
57,7 |
17,3 |
22,7 |
1.3. Задание на исследование
Построить диаграмму плотности распределения временных интервалов появления транзактов и сформировать выходной текстовый файл (с помощью PLUS процедуры), содержащий:
· как общее количество поступивших в систему транзактов, так и по каждому типу;
· общее время работы модели;
· среднюю длину очереди.
2. Формализованное описание системы
В системе присутствуют 3 главных потока транзактов (имеется вспомогательный поток, применяемый для выполнения процедуры чтения исходных данных). Генерация транзактов происходит по экспоненциальному закону распределения. В каждом потоке двигаются транзакты определенного типа. В блоке Vstal потоки объединяются, образуя очередь. Транзакты шестого типа уничтожаются, если длина очереди больше 11. Транзакты второго типа задерживаются, если длинна очереди больше 5, на 25.8 ± 20%, затем вновь проверяя длину очереди. Транзакты 4 типа не обращают внимание на длину очереди. Транзакты после очереди занимают некое устройство, время обработки в котором определяется из задания в соответствии с вариантом. Программа заканчивает свою работу, предварительно записав результаты своей работы в файл, когда через модель пройдет не менее 10-ти транзактов 6-го типа, 5-ти транзактов 5-го типа, и 8-ти - 4-го типа.
3. Блок-схема алгоритма модели
4. Программа модели
INCLUDE "InputProc.txt"
INCLUDE "Commands.txt"
GENERATE 1,,0,1
ASSIGN 1,(ReadFile("InF.txt",4))
TERMINATE
START 1
fuck generate (EXPONENTIAL(2,v$vr11,v$vr21)),,1
assign Tip,(MX$vremia(1,1))
tabulate Raspred1
savevalue 1,c1
transfer ,vstal
fuck1 generate (EXPONENTIAL(3,v$vr12,v$vr22)),,2
assign Tip,(MX$vremia(2,1))
tabulate Raspred2
savevalue 2,c1
test le Q$obsluz,11,vse
transfer ,vstal
fuck2 generate (EXPONENTIAL(4,v$vr13,v$vr23)),,3
assign Tip,(MX$vremia(3,1))
tabulate Raspred3
savevalue 3,c1
Tip_5 test le Q$obsluz,5,go
transfer ,vstal
go advance 25.8,(25.8#0.2)
transfer ,Tip_5
vstal queue obsluz
enter object
depart obsluz
test E p$Tip,1,dalee
advance v$vr_adv31,v$vr_adv41
leave object
savevalue tip4+,1
ux1 test LE x$tip4,7,ux
transfer ,vse
dalee test E p$Tip,2,dalee1
advance v$vr_adv32,v$vr_adv42
leave object
savevalue tip6+,1
ux test LE x$tip6,9,konec
transfer ,vse
dalee1 test E p$Tip,3,vse
advance v$vr_adv33,v$vr_adv43
leave object
savevalue tip5+,1
test LE x$tip5,4,ux1
vse terminate
generate 20000000
konec open ("Wrt.txt"),1
write ("+----------------------------------+"),1
write ("|Obsee cgislo tranzaktov |"),1
write ("|----------------------------------|"),1
write (PolyCatenate("|",N$fuck+N$fuck1+N$fuck2," |")),1
write ("+----------------------------------+"),1
write ("|Tip tranzakta | Kolichestvo vxodov|"),1
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.