Разделы

Авто
Бизнес
Болезни
Дом
Защита
Здоровье
Интернет
Компьютеры
Медицина
Науки
Обучение
Общество
Питание
Политика
Производство
Промышленность
Спорт
Техника
Экономика

Блок BUFFER

Имя BVARIABLE булевское выражение

Булевские переменные

LOOP A,B

А- имя параметра

В- метка перехода

Ранее было введено понятие арифметической переменной:

Значением булевской переменной может быть либо TRUE- èñòèíà, либо F FALSE- ëîæü (либо 0, либо 1).

Пр.:Примеры булевских выражений:

1. Логический переключатель LS5 .(включен, выключен);

2. SF19 – многоканальное устройство 19 заполнено полностью? (да, нет)

3. Могут быть отношения:

СЧА1 <оператор отношения> СЧА2

P1 G P2 - если значение параметра 1 больше, чем значение параметра 2, то истина (1).

 

В системе моделирования GPSS интерпретатор просматривает транзакты, находящиеся в цепи текущих событий, по порядку, от начала к концу списка. Интерпретатор берет сначала первый транзакт и пытается его продвинуть. Но существуют ситуации, когда интерпретатор вместо того, чтобы рассматривать транзакт, идущий следом за уже обработанным, начинает просмотр с начала очереди, например, после прохождения блока RELEASE. Если транзакт попадает в блок BUFFER, то интерпретатор прекращает продвижение данного события и возвращается обратно в цепь текущих событий за следующим транзактом.

 

Пример № 8.1: Рассмотрим схему прерываний. На эту схему (на регистр) поступают запросы на прерывание. Будем считать, что операционная система следит за состоянием этого регистра, и если в нем есть запрос, то операционная система начинает его обслуживать. После чего данный запрос обнуляется. Запросы обрабатываются некоторое время.

 

* Генерация транзактов в соответствии с экспоненциальным законом * распределения

  GENERATE 300,FN$EXP,,1    
  QUEUE A
  GATE LS G1
M GATE LS W
  DEPART A
  TERMINATE  

* Ãåíåðèðóåòñÿ 1 òðàíçàêò

  GENERATE ,,,1

* Ïðîâåðêà òåêóùåãî ñîäåðæèìîãî î÷åðåäè À íà ðàâåíñòâî íóëþ. Åñëè

* ðàâíî íóëþ, òî òðàíçàêò èäåò äàëüøå, èíà÷å - áëîêèðóåòñÿ.

N TEST W$A,0
  LOGIC S C1
  ADVANCE FN$BC
  LOGIC S W
  BUFFER  
  LOGIC R W
  TRANSFER ,N

 

Àðãóìåíò ôóíêöèè ÂÑ äîëæåí çàâèñåòü îò ÷èñëà ñãåíåðèðîâàííûõ òðàíçàêòîâ.

BC FUNCTION W$M,C10

За время обработки функции ВС в первом блоке GENERATE будут генерироваться следующие транзакты.

 

Лекция № 9

 

Пример 9.1:Имеется некоторая ВС, например ILLIAC-IV, которая работает некоторое время, затем может произойти отказ. Отказавший модуль этой системы поступает в ремонт. Для этого надо затратить время. Вместо отказавшего модуля используют новый модуль из числа запасных.. Тот модуль, который поступил в ремонт, ремонтируется каким-то мастером. Если нет отказавших модулей в этой системе, мастер ремонтирует отказавшие модули из других систем. Отремонтированные модули поступают обратно в систему во множество запасных модулей. Сколько должно быть запасных модулей?

 

 


Âàðèàíò ¹1.

* Случайная величина PARTS принимает значение 3

INITIA1L Х$PARTS, 3

* ñòàíäàðòíàÿ íîðìàëüíàÿ ôóíêöèÿ ðàñïðåäåëåíèÿ

SNORM FUNCTION RN1,C25

0, …5/…

* Ìàñøòàá 1 ÷àñ = 10 åäèíèöàì

ATIME FVARIABLE 700*FN$SNORM+350  
BTIME FVARIABLE S*FN$SNORM+80  

* Ãåíåðèðóåòñÿ 3 òðàíçàêòà

  GENERATE ,,,X$PARTS  
L GATE LR N
  LOGIC S N

* Установка ВМ в машину

  ADVANCE
  SEIZE MACH

* Время, которое ВС будет работать до первого отказа

  ADVANCE V$ATIME
  RELEASE MACH

* ВМ вытаскивают из ВС

  ADVANCE
  LOGIC R N
  SEIZE MASTER

* Время ремонта ВМ мастером

  ADVANCE V$BTIME
  RELEASE MASTER
  TRANSFER ,L

* Моделирование работы мастера

  GENERATE 90,FN$EXP

* Åñëè óñòðîéñòâî MASTER çàíÿòî, òî òðàíçàêò ïîñòóïàåò â áëîê

* ADVANCE è òàì æäåò íóëåâîå âðåìÿ (îñîáåííîñòè èíòåðïðåòàòîðà ÿçûêà

* GPSS).

  ADVANCE  
  SEISE MASTER
  ADVANCE 80,4
  RELEASE MASTER
  TERMINATE  

*Счетчик времени

  GENERATE
  TERMINATE
  START
  END  

 

Вариант № 2

(приводится только та часть программы, которая потерпела изменения по сравнению с вариантом №1)

 

* ñòàíäàðòíàÿ íîðìàëüíàÿ ôóíêöèÿ ðàñïðåäåëåíèÿ

SNORM FUNCTION RN1,C25

0, …5/…

* Ìàñøòàá 1 ÷àñ = 10 åäèíèöàì

ATIME FVARIABLE 700*FN$SNDRM+350  
BTIME FVARIABLE S*FN$SNDRM+80  
  GENERATE ,,,1
  SEIZE MACH
  ADVANCE V$ATIME

 

  RELEASE MACH
  ADVANCE
  SPLIT 1,M
  SEIZE MASTER
  SAVEVALUE 1+,1
  TERMINATE  
M TEST G X1,0
  SAVEVALUE 1-,1

* Вставление ВМ в ВС

  ADVANCE
  TRANSFER ,L

*Счетчик времени

  GENERATE
  TERMINATE
  START
  END  

 

Х1 эквивалентно X$PARTS из варианта №1(сколько есть запасных деталей).

Дата публикации:2014-01-23

Просмотров:431

Вернуться в оглавление:

Комментария пока нет...


Имя* (по-русски):
Почта* (e-mail):Не публикуется
Ответить (до 1000 символов):







 

2012-2018 lekcion.ru. За поставленную ссылку спасибо.