Программа

 

 

BUF STORAGE 1000000

VK STORAGE 3

*Описание двух памятей: BUF с неограниченным количеством мест и VK на *3 места, в которой каждое место имитирует один процессор.

*Режим недоступности для памяти имеет меньше возможностей по *сравнению с устройствами. В нем нельзя указать изменение режимов для *транзактов, связанных с объектом, на который накладывается режим *недоступности. А режим отказов для вновь поступающих транзактов можно *наложить блоком GATE.

GENERATE 8,4

GATE SV BUF,OTKAZ

*Транзакты, вошедшие в блок GATE, проверяют доступность памяти с *именем BUF. Если она доступна, то они поступают к следующему блоку и *занимают память. В случае недоступности транзакт переходит на метку *OTKAZ

ENTER BUF

ENTER VK

LEAVE BUF

ADVANCE 20,7

LEAVE VK

TERMINATE

OTKAZ TERMINATE 1

*Так как первый блок TERMINATE с пустым операндом А, а второй с А=1, *то на счетчик команды START будет влиять только второй блок *TERMINATE и после удаления через него 50 транзактов произойдет *останов.

*Сегмент отказа

GENERATE 5000,300

SUNAVAIL BUF

SUNAVAIL VK

*Установление режима недоступности на памяти с именем BUF и VK

ADVANCE 100,20

SAVAIL VK

SAVAIL BUF

*Возвращение памятям режима доступности.

TERMINATE

START 50