*********************************************************************** ** PACKAGE Predefined ** #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,21,9) *********************************************************************** 2 NEWTYPE Boolean #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,23,10) 2 NEWTYPE Character #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,34,9) 2 NEWTYPE Charstring #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,92,9) 2 NEWTYPE Integer #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,126,9) 2 NEWTYPE Real #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,147,9) 2 NEWTYPE Pid #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,215,9) 2 NEWTYPE Duration #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,221,9) 2 NEWTYPE Time #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,237,9) 2 NEWTYPE Bit #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,251,9) 2 NEWTYPE Bit_string #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,261,9) 2 NEWTYPE Octet #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,282,9) 2 NEWTYPE Octet_string #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,313,9) 2 NEWTYPE NULL #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,331,9) 2 NEWTYPE Object_identifier #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,335,9) 2 NEWTYPE Any_type #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,350,9) 2 SYNTYPE IA5String #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,107,3) 2 SYNTYPE NumericString #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,112,3) 2 SYNTYPE PrintableString #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,117,3) 2 SYNTYPE VisibleString #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,122,3) 2 SYNTYPE Natural #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,145,9) 2 GENERATOR String #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,77,11) 2 GENERATOR Array #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,165,11) 2 GENERATOR Powerset #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,172,11) 2 GENERATOR Bag #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,193,11) 2 GENERATOR Own #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,353,11) 2 GENERATOR Oref #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,363,11) 2 SYNONYM PLUS_INFINITY #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,162,9) 2 SYNONYM MINUS_INFINITY #SDTREF(TEXT,C:\Telelogic\SDL_TTCN_Suite6.0\sdt\sdtdir\wini386\predef.sdl,163,9) *********************************************************************** ** SYSTEM Concuro ** #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy,4,1,8) *********************************************************************** 2 SIGNAL requestWrite #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),179(20,175),2,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),141(135,85),1,1) SIGNALROUTE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),120(17,52),1,1) SIGNALROUTE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),168(17,85),1,1) OUTPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),149(35,110),1,1) OUTPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),131(25,105),1,1) 2 SIGNAL approveWrite #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),179(20,175),3,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),142(135,60),1,1) SIGNALROUTE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),121(82,55),1,1) SIGNALROUTE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),169(75,85),1,1) INPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),158(60,140),1,1) INPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),125(50,135),1,1) 2 SIGNAL requestRead #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),179(20,175),4,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),150(135,130),1,1) 2 SIGNAL approveRead #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),179(20,175),5,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),151(135,170),1,1) 2 SIGNAL consumerXReadItemY #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),179(20,175),6,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),123(39,112),1,1) 2 SIGNAL producerXWroteItemY #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),179(20,175),7,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),123(39,112),2,1) 2 CHANNEL ProducerDongle #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),140(130,72),1,1) CONNECTION #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),125(2,42),1,1) 2 CHANNEL ThisWayOrTheHighway #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),122(45,102),1,1) 2 CHANNEL ConsumerDongle #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),149(132,152),1,1) 2 BLOCK Producers #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk,4,1,7) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),134(130,30),1,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),134(130,30),1,1) REFERENCE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),134(130,30),1,1) 2 BLOCK ConcuroBlock #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),119(110,100),1,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),119(110,100),1,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),119(110,100),1,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),119(110,100),1,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),119(110,100),1,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),119(110,100),1,1) 2 BLOCK Consumers #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),137(130,185),1,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),137(130,185),1,1) CHANNEL #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),137(130,185),1,1) *********************************************************************** ** BLOCK Producers ** <> ** #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk,4,1,7) *********************************************************************** 3 SIGNALROUTE ProducerLine1 #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),119(42,42),1,1) CONNECTION #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),119(42,42),1,1) 3 SIGNALROUTE ProducerLine2 #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),167(45,75),1,1) CONNECTION #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),167(45,75),1,1) 3 PROCESS Producer #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr,4,1,9) SIGNALROUTE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),116(95,35),1,1) SIGNALROUTE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),116(95,35),1,1) REFERENCE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),116(95,35),1,1) 3 PROCESS Producer2 #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr,4,1,9) SIGNALROUTE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),161(95,75),1,1) SIGNALROUTE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),161(95,75),1,1) REFERENCE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producers.sbk(1),161(95,75),1,1) *********************************************************************** ** PROCESS Producer ** <> ** #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr,4,1,9) *********************************************************************** 4 TIMER walkingTime #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),128(135,15),1,7) SET #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),125(45,40),5,18) INPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),143(60,90),1,1) SET #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),179(45,160),3,18) 4 DCL someTime #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),128(135,15),3,1) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),125(45,40),3,1) SET #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),125(45,40),5,9) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),179(45,160),2,1) SET #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),179(45,160),3,9) 4 DCL myID #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),128(135,15),4,1) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),125(45,40),1,1) OUTPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),149(35,110),1,14) 4 DCL numberToWrite #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),128(135,15),5,1) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),125(45,40),2,1) OUTPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),149(35,110),1,19) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),179(45,160),1,1) 4 DCL mahPID #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),128(135,15),6,1) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),125(45,40),4,1) OUTPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),149(35,110),1,33) 4 SYNTYPE iLikeToWrite #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),128(135,15),7,9) TASK #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),125(45,40),2,20) TASK #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),179(45,160),1,20) 4 SYNTYPE babaAuRum #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),128(135,15),11,9) TASK #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),125(45,40),3,15) TASK #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),179(45,160),2,15) 4 STATE SiDLing #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),134(65,70),1,1) NEXTSTATE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),134(65,70),1,1) NEXTSTATE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),176(65,185),1,1) 4 STATE ForcedToWait #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),167(60,125),1,1) NEXTSTATE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer.spr(1),167(60,125),1,1) *********************************************************************** ** PROCESS Producer2 ** <> ** #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr,4,1,9) *********************************************************************** 4 TIMER walkingTime #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),116(125,10),1,7) SET #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),140(35,35),5,18) INPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),134(50,85),1,1) SET #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),122(35,155),3,18) 4 DCL someTime #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),116(125,10),3,1) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),140(35,35),3,1) SET #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),140(35,35),5,9) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),122(35,155),2,1) SET #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),122(35,155),3,9) 4 DCL myID #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),116(125,10),4,1) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),140(35,35),1,1) OUTPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),131(25,105),1,14) 4 DCL numberToWrite #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),116(125,10),5,1) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),140(35,35),2,1) OUTPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),131(25,105),1,19) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),122(35,155),1,1) 4 DCL mahPID #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),116(125,10),6,1) ASSIGNMENT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),140(35,35),4,1) OUTPUT #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),131(25,105),1,33) 4 SYNTYPE iLikeToWrite #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),116(125,10),7,9) TASK #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),140(35,35),2,20) TASK #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),122(35,155),1,20) 4 SYNTYPE babaAuRum #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),116(125,10),11,9) TASK #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),140(35,35),3,15) TASK #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),122(35,155),2,15) 4 STATE SiDLing #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),137(55,65),1,1) NEXTSTATE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),137(55,65),1,1) NEXTSTATE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),119(55,180),1,1) 4 STATE ForcedToWait #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),128(50,120),1,1) NEXTSTATE #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Producer2.spr(1),128(50,120),1,1) *********************************************************************** ** BLOCK ConcuroBlock ** <> ** #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),119(110,100),1,1) *********************************************************************** *********************************************************************** ** BLOCK Consumers ** <> ** #SDTREF(SDL,H:\SEG2106\LAB8Concurency\Concuro.ssy(1),137(130,185),1,1) ***********************************************************************