Форум программистов, компьютерный форум, киберфорум
GPSS
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.97/34: Рейтинг темы: голосов - 34, средняя оценка - 4.97
 Аватар для Aiven
0 / 0 / 0
Регистрация: 07.04.2015
Сообщений: 17

Простая система на GPSS с несколькими очередями

07.04.2015, 16:46. Показов 7345. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Непонятно, где ошибка в коде. Программа вылетает с

04/07/15 16:47:04 Error Stop.
04/07/15 16:47:04 Halt. XN: 1. Block 45 Next.
04/07/15 16:47:04 Clock:6.369464. Next: TERMINATE. Line 63.
04/07/15 16:47:04 TERMINATE 0
04/07/15 16:47:04 A Transaction which owns a Facility is attempting to terminate.

Вот код:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
    GENERATE    ,,,1000
 
    ASSIGN  ADV_DISTR,5
    ASSIGN  ADV_DISTR_SPREAD,2
    ASSIGN  ADV_Q1,10           
    ASSIGN  ADV_Q1_SPREAD,5         
    ASSIGN  MAX_LEN_Q1,5000         ;максимальная длина 1 очереди (байт)
    ASSIGN  ADV_Q2,10           
    ASSIGN  ADV_Q2_SPREAD,5         
    ASSIGN  MAX_LEN_Q2,7000         ;максимальная длина 2 очереди (байт)
    ASSIGN  SIZE,100,EXPON          ;размер пакета
    INITIAL     X$LEN_Q1,0
    INITIAL     X$LEN_Q2,0
    ASSIGN  FLAG_FIN,0
 
    EXPON   FUNCTION    RN2,C24
    0,0/0.1,0.104/0.2,0.222/0.3,0.355/0.4,0.509
    0.5,0.69/0.6,0.915/0.7,1.2/0.75,1.38/.8,1.6
    .84,1.83/.88,2.12/.9,2.3/.92,2.52/.94,2.81
    .95,2.99/.96,3.2/.97,3.5/.98,3.9/.99,4.6
    .995,5.3/.998,6.2/.999,7/.9998,8
 
    SEIZE   Distributer
    ADVANCE P$ADV_DISTR,P$ADV_DISTR_SPREAD
    RELEASE Distributer
 
    TRANSFER    .40,,FTP
    ASSIGN  TCP,1
    TRANSFER    ,FIN
 
FTP ASSIGN  FTP,1   
    
FIN TRANSFER    .99,,GO 
    ASSIGN  FLAG_FIN,1
 
GO        TEST E    FTP,0,FTP_Q
    TEST E  P$FLAG_FIN,0,Ret2
    TEST LE     X$LEN_Q1,X$LEN_Q2,Q_Sel 
    TEST LE X$LEN_Q1,P$MAX_LEN_Q1,Q_Sel
            QUEUE   Queue1      
    SAVEVALUE LEN_Q1+,SIZE
            SEIZE   Handler1            
            DEPART  Queue1              
    SAVEVALUE LEN_Q1-,SIZE
            ADVANCE P$ADV_Q1,P$ADV_Q1_SPREAD  
            RELEASE Handler1                
            TERMINATE   0           
 
Q_Sel   TEST LE X$LEN_Q2,P$MAX_LEN_Q2,Ret1  
    QUEUE   Queue2                  
    SAVEVALUE LEN_Q2+,SIZE
            SEIZE   Handler2                    
            DEPART  Queue2                      
    SAVEVALUE LEN_Q2-,SIZE
            ADVANCE P$ADV_Q2,P$ADV_Q2_SPREAD     
            RELEASE Handler2                    
            TERMINATE   0       
 
FTP_Q   QUEUE   QueueFTP
    SEIZE   HandlerFTP
    DEPART  QueueFTP
    TERMINATE   0
    
;------------------------------------------------------------------------
Ret1    TERMINATE   0
    GENERATE    10000       
    TERMINATE   1
    START   1   
 
Ret2    TERMINATE   0
    HALT
Не работает где-то в строчках:
Code
1
2
3
4
FTP_Q   QUEUE   QueueFTP
    SEIZE   HandlerFTP
    DEPART  QueueFTP
    TERMINATE   0
Может кто-нибудь объяснить?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.04.2015, 16:46
Ответы с готовыми решениями:

Вычислительная система с очередями
Здравствуйте, есть такая задача: Разработать модель, реализующую вычмслительной системы с очередями. Дисциплина обслуживания долгосрочной...

Простая задача в среде GPSS - Отдел готового платья
Добрый день! Я впервые на вашем форуме. Я узнал про раздел помощи студентам. Но решил написать в общий раздел, так как кое что успел...

Информационно-измерительная система gpss
Помогите, пожалуйста, разобраться. Был курс gpss (всего 2 лабораторных.Теперь задали курсовую) Информационно – измерительная система...

28
 Аватар для Dukalys
1817 / 1031 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
15.05.2015, 17:42
Студворк — интернет-сервис помощи студентам
точка это отделение целой и дробной части 0.2 .2 одно и тоже
точек минимум 1 или 2

Добавлено через 5 минут
Про функции много где написано, рекомендую посмотреть Шрайбера, там разные выходные значения могут задаваться - дискретные, либо из диапазона
0
 Аватар для Aiven
0 / 0 / 0
Регистрация: 07.04.2015
Сообщений: 17
15.05.2015, 17:57  [ТС]
Я не про то, что такое .2, а про то, влияет ли величина интервала на вероятность выпадения значения при заданном генераторе.
Например задана функция:

Fuction_0 FUNCTION RN1,D2
.2,5/1,10

Вопрос в том, будет ли чаще возвращаться число 10 потому, что интервал для него = 0.8 (при том что для числа 5 интервал равен всего 0.2)

По поводу максимального числа точек. Хотите сказать, что оно не фиксировано в GPSS?
0
 Аватар для Dukalys
1817 / 1031 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
15.05.2015, 18:01
0.8 вероятность выше чем 0.2 в 4 раза !!! значит число из соответствующего интервала в 4 раза вероятнее.

Что такое точки не знаю
0
 Аватар для Aiven
0 / 0 / 0
Регистрация: 07.04.2015
Сообщений: 17
15.05.2015, 18:07  [ТС]
О, отлично, спасибо. Про вероятность так и думала. Хотела уточнить))

Ну точки в функции - пара x,y (.2, 5 или 0.8,10 в данном примере (2 точки))
Вряд ли можно задавать в GPSS функцию с бесконечным количеством точек. Есть же какие-то ограничения?

Мне это нужно потому, что я генерирую функции программно. А для этого важно знать максимально возможное количество точек.
0
 Аватар для Dukalys
1817 / 1031 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
15.05.2015, 18:16
Цитата Сообщение от Aiven Посмотреть сообщение
Мне это нужно потому, что я генерирую функции программно.
Программно это как? Все ограничения в книге Шрайбера должны быть, 20+ точно поддерживает
0
 Аватар для Aiven
0 / 0 / 0
Регистрация: 07.04.2015
Сообщений: 17
15.05.2015, 18:28  [ТС]
У меня код на плюсах, который генерирует код для GPSS))

Окей, поищу в Шрайбере) Спасибо)
0
 Аватар для Dukalys
1817 / 1031 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
15.05.2015, 18:30
самостоятельно задайте в GPSS функцию на 100, 1000 параметров, если программно, то это 2-3 минуты возни.
0
 Аватар для Aiven
0 / 0 / 0
Регистрация: 07.04.2015
Сообщений: 17
16.05.2015, 22:00  [ТС]
Да не, мне именно программно нужно.
Ну с 707-ю точками вроде работает =)

F_size_0 FUNCTION RN1,D707

Добавлено через 23 часа 45 минут
А GPSS позволит вынести функции в отдельный файл?
Есть конечно команды OPEN и READ, но мне недостаточно считать строку из файла. Мне ведь нужно, чтобы функция, заданная в файле, была проинициализирована в самой программе.

Добавлено через 3 часа 25 минут
А, всё. Через INCLUDE надо было подключать
0
 Аватар для Aiven
0 / 0 / 0
Регистрация: 07.04.2015
Сообщений: 17
28.05.2015, 02:56  [ТС]
INCLUDE не подключает текстовые файлы, созданные в линуксе через ofstream
И при этом работает с файлами, созданными в винде.

С чем это может быть связано? Кодировка? Права доступа?

Добавлено через 7 часов 1 минуту
У виндовых файлов 0D0A в конце, у линуксовых - 0A. Видимо из-за этого

Добавлено через 1 час 47 минут
Действительно из-за этого.
Проблема была решена с помощью рекурсивного конвертирования файлов:

find . -type f -exec unix2dos {} \;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.05.2015, 02:56

Информационно-измерительная система gpss
Информационно – измерительная система состоит из 4-х процессоров и двухсот датчиков. Интервалы времени между сигналами прерывания от...

Система обработки сообщений с ограничением времени прохождения GPSS/H
Доброго времени суток всем! Ребят, в общем, сложилась очень непростая ситуация в институте. 3,5 года преподавали программирование на...

Простая система администрирования
Сайт несложный, без системы членства. Нужен только админ, который сможет добавлять фото, посты, и информацию об услугах. Наставьте на...

Простая система заявок
Здравствуйте! Хотел бы написать простую систему заявок. Но, так как я все таки больше администратор, нежели программист, то прошу...

Простая файловая система
Доброго времени суток! Уважаемые профессионалы, помогите пожалуйста. Необходимо написать простенькую файловую системы, способную...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru