Professional Documents
Culture Documents
Elementos bsicos
Entidades Transacciones: se mueven a travs del sistema, entran, permanecen y salen. Entidades Permanentes: estn siempre en el sistema y actan como recursos disponibles o no.
Elementos bsicos
Funcionamiento: las transacciones se mueven a travs del sistema hasta que encuentran una entidad que las atiende. Flujo: el programa avanza con una transaccin de un bloque a otro, hasta que algn bloque las retiene, porque representa un tiempo de espera o por que no puede seguir hasta cumplir con alguna condicin lgica.
Simulacin
Simulacin
OPERANDOS
;COMENTARIOS
PARA QUE CADA BLOQUE EJECUTE LA ACCIN CORRESPONDIENTE ES NECESARIO INCLUIR UN CONJUNTO DE CALIFICADORES
Distribucciones de Probabilidad
Librera: EXPONENTIAL(nro. generador,0,media) UNIFORM(nro. generador,mnimo,mximo) NORMAL(nro. generador,media,desviacin) POISSON(nro. generador,media) Otras Empricas: se deben crear usando el comando FUNCTION.
GENERATE
A,B,C,D,E
A: tiempo medio entre llegadas B: Desviacin respecto a la media C: Tiempo en que se generar la primera transaccin D: Lmite de generacin de transacciones E: Nivel de prioridad
Simulacin
GENERATE
Ejemplo 1: Los tiempos entre arribos de llegada de los clientes al banco es exponencial con media de 7 minutos.
SPLIT
SPLIT A,B
A: Cantidad de transacciones a generar B: Destino de las nuevas transacciones (opcional)
Ejemplo 1: En un sistema arriban lotes exponencialmente con media de 30 minutos. El tamao de cada lote es de 10 piezas las cuales se procesan individualmente
GENERATE
(EXPONENTIAL(1,0,7))
Ejemplo 2: otro tipo de cliente arriba unif. cada 4+-2 minutos y cuyo primer arribo ocurre luego de 1hs.30min. despus del inicio de apertura del banco.
GENERATE O GENERATE
(UNIFORM(1,2,6)),,90 4,2,90
GENERATE SPLIT 9
10
(EXPONENTIAL(1,0,30))
SE CREAN 9 TRANSACCIONES GEMELAS
SPLIT
Modificacin Ejemplo 1: Todas las piezas (10) van a ser procesadas en la mquina 2.
SPLIT
1
10,procesoMaq2
LAS 10 TRANSACCIONES GEMELAS VAN A LA ETIQUETA PROCESO MAQ2
LA TRANSACCIN ORIGINAL
TERMINATE
Simulacin
(EXPONENTIAL(1,0,1))
Estoy sacando la
GENERATE TERMINATE
START 1
60 1
decrementa el contador
Captura de servidores
SEIZE: simula la captura de un servidor. Acta como
bloque controlador del flujo de transacciones. Maneja una variable interna llamada F, que puede tomar los valores 0 o 1.
Captura de servidores
ENTER: simula la seleccin o captura de uno o ms
servidores en paralelo.
SEIZE
ENTER A,B A: nombre o nmero del almacn por utilizar. B: nmero de unidades para las que se decrementa la capacidad disponible del almacn. Por default 1.
Para los almacenes se necesita definir su capacidad. Nomb_almacen STORAGE 100
Simulacin
Captura de servidores
ENTER
Ejemplo: Las piezas arriban exponencialmente con media de 1 minuto y luego son pueden ser procesadas cualquiera de las 4 mquinas con igual tiempo de procesamiento y luego salen de la fabrica. MAQUINAS STORAGE 4
RELEASE A
A: Identificacin del servidor. Ejemplo: GENERATE SEIZE .............. RELEASE TERMINATE MAQUINA (EXPONENTIAL(1,0,1)) MAQUINA
Bloques de espera/cola
Ingreso QUEUE: nos permitir obtener estadsticas de colas que se forman al momento que las transacciones esperan usar un servidor. QUEUE A,B A: nombre/nro. de cola B: nro. de unidades en que se incrementa el contenido de la entidad de cola . Default =1
LEAVE
A,B
Simulacin
Bloques de espera/cola
Salida DEPART: reduce el contenido de la entidad cola. DEPART A,B A: nombre/nro. de cola B: nro. de unidades en que se decrementa el contenido de la entidad de cola . Default =1
Bloques de espera/cola
Ejemplo:
GENERATE QUEUE SEIZE DEPART .............. RELEASE TERMINATE MAQUINA (EXPONENTIAL(1,0,1)) COLAMAQ MAQUINA COLAMAQ
Proceso
ADVANCE: este bloque retarda el progreso de
una transaccin por una cantidad especificada de tiempo de simulacin
Ejemplo 1
Una mquina procesa 1 pieza en un tiempo de 10+-3 minutos. Las piezas arriban al sector de la mquina con tiempo de arribo exponencial con media de 2.4 minutos. a) Simule el modelo planteado durante 8 horas, para conocer cuntas piezas han sido procesadas durante ese perodo. Y tiempo en cola de espera. b) Simule el modelo planteado para conocer el tiempo total para procesar 100 piezas
ADVANCE A,B
A: es el tiempo de retraso de la actividad (servicio) B: desviacin con respecto a la media para una distribucin uniforme.
MQUINA
PIEZA PROCESADA
Simulacin
Ejemplo 1
Entonces debemos: 1 - generar el tiempo de arribo de las piezas al sector de la mquina 2- colocar en cola de espera 3- ocupar la mquina si est disponible 4- procesar la pieza 5- sacar la pieza , liberar la mquina
Ejemplo 1 item a)
Proceso de arribo y procesamiento de las piezas GENERATE (EXPONENTIAL(1,0,2.4)) ;arribo de las piezas QUEUE COLAMAQ ;coloco la pieza en cola de espera SEIZE MAQUINA ; si mq. Disponible, se ocupa DEPART COLAMAQ ;se saca la pieza de la cola ADVANCE 10,3 ;avanzo el tiempo tambin puede ser UNIFORM(2,7,13) RELEASE MAQUINA ; libero la mquina TERMINATE ; sale una pieza procesada Proceso de control de fin de la simulacin GENERATE 480 ; se ejecuta a las 8 horas TERMINATE 1 ; decrementa el contador START 1
Ejemplo 1 item b)
Proceso de arribo y procesamiento de las piezas GENERATE (EXPONENTIAL(1,0,2.4)) ;arribo de las piezas QUEUE COLAMAQ ;coloco la pieza en cola de espera SEIZE MAQUINA ; si mq. Disponible, se ocupa DEPART COLAMAQ ;se saca la pieza de la cola ADVANCE UNIFORM(2,7,13) ;avanzo el tiempo RELEASE MAQUINA ; libero la mquina TERMINATE 1 ; sale una pieza procesada
Entorno GPSS
Pantalla Principal
START 100
Simulacin
Entorno GPSS
Se ejecuta la simulacin, utilizando la opcin CREATE SIMULATION del Menu COMMAND. Si no existen errores de sintaxis el software mostrar un mensaje de listo (Ready). Desde el menu COMMAND, seleccionar la opcin START, que nos permitir ingresar el valor del contador de terminacin.
Ejemplo 2
Cuatro mquinas procesan piezas en un tiempo de 10+-3 minutos. Las piezas arriban al sector de las mquinas con tiempo de arribo exponencial con media de 2.4 minutos. a) Simule el modelo planteado durante 8 horas, para conocer cuntas piezas han sido procesadas durante ese perodo. Y tiempo en cola de espera. Entonces debemos: 1 - generar el tiempo de arribo de las piezas al sector de la mquina 2- colocar en cola de espera 3- ocupar cualquier de las mquinas que est disponible 4- procesar la pieza 5- sacar la pieza , liberar la mquina
Ejemplo 2
Proceso de arribo y procesamiento de las piezas GENERATE (EXPONENTIAL(1,0,2.4)) ;arribo de las piezas QUEUE COLAMAQ ;coloco la pieza en cola de espera ENTER MAQUINAS ; si hay mq. Disponible, ocupa una DEPART COLAMAQ ;se saca la pieza de la cola ADVANCE 10,3 ;avanzo el tiempo tambin puede ser UNIFORM(2,7,13) LEAVE MAQUINAS ; libero una mquina TERMINATE ; sale una pieza procesada Proceso de control de fin de la simulacin GENERATE 480 ; se ejecuta a las 8 horas TERMINATE 1 ; decrementa el contador Definicin de la capacidad del almacen MAQUINAS STORAGE 4 ; para simular las 4 mquinas
Simulacin
Control de Flujo
TEST: compara valores y controla el destino de
la transaccin de acuerdo al resultado de la comparacin.
TEST O
A,B,C
O: es un operador relacional entre A, B. Puede ser E, G, L, NE, GE o LE. A: es el valor para el test B: es un valor de referencia. C: bloque destino si el test no se cumple
Control de Flujo
TRANSFER: este bloque permite que una
transaccin activa se dirija a una nueva ubicacin dentro del modelo.
TRANSFER
A,B,C,D
A: modalidad de referencia. El operando puede ser BOTH, ALL, fraccin, etc. B: nmero o ubicacin del bloque. C: nmero o ubicacin del bloque D: nmero de incremento de bloques cuando est en modalidad ALL
El mtodo que se utiliza para la eleccin se indica mediante un factor de seleccin en el campo A.
Simulacin
10
Control de Flujo
Gua de Trabajos Prcticos N 5 - ANEXO Problema 1 A un taller llegan piezas cada 15 minutos, las que son procesadas por una mquina en 14 4 minutos. Luego son inspeccionadas en 11 3 minutos. El 90% de las piezas son aceptadas y el 10% restante va a ser reprocesado por la mquina. a) Cunto tiempo toma aceptar 50 piezas? b) Cul es el tiempo medio de espera para ser atendida por la mquina?
Control de Flujo
Control de Flujo
BOTH: TRANSFER BOTH,Lugar1,Lugar2
La transaccin va a B (Lugar1) si est desocupada, sino va a C (Lugar2). Ver problema 2 del ANEXO 5
Simulacin
11
Problema 2 Los usuarios del laboratorio de computacin llegan cada 5 3 minutos. Si el laboratorio esta lleno van al bar donde permanecen 5 minutos. Pasado ese tiempo, el 50% de los alumnos vuelve a intentar usar el laboratorio, el resto permanece durante 60 minutos ms y luego se va. El tiempo de permanencia en el laboratorio es de 60 20 minutos, y su capacidad es de 10 mquinas. a) Cuntos alumnos se van sin haber usado el laboratorio despus de 8 horas de simulacin? b) Cuntos usaron el laboratorio?
Control de Flujo
ALL TRANSFER ALL,primerlugar,ltimolugar,incremento
Si hay ms de 2 destinos, chequea si estn disponibles todos los bloques comprendidos entre el bloque especfico en B y el bloque C. Si se quiere saltar cierto nro. fijo de bloques, se lo especifica en D. Ver problema 3 del ANEXO 5
Simulacin
12
Control de Flujo
TEST: compara valores y controla el destino de
la transaccin de acuerdo al resultado de la comparacin.
TEST O
A,B,C
O: es un operador relacional entre A, B. Puede ser E, G, L, NE, GE o LE. A: es el valor para el test B: es un valor de referencia. C: bloque destino si el test no se cumple
Simulacin
13
TABLE
TABLE: Inicializa una tabla de distribucin de
frecuencias.
MARK
MARK: permite asignar un tiempo a la
transaccin activa diferente al tiempo de entrada.
nombre_tabla
TABLE
A,B,C,D
MARK
A: Variable a tabular B: lmite superior de la primera frecuencia. C: incremento D: cantidad de intervalos El operando A puede ser un SNA como M1(tiempo trasncurrido), Qi (contenidos de una queue), Si (contenidos de un storage) o Xi (contenidos de un savevalue)
A: es un parmetro numrico que recibe el valor del reloj del sistema. Si no se especifica el operando A se toma el tiempo del reloj del sistema en el momento que la transaccin pasa por el bloque MARK. Si el operando A es especificado , el tiempo del reloj se toma de acuerdo al parmetro especificado en el operando A
Ejemplo:
TIEMPO
TABLE
M1,50,50,10
TABULATE
TABULATE: recolecta los datos de la medicin y los coloca en una tabla. TABULATE A
A: es el nombre o nmero de la tabla que debe ser incluido obligatoriamente. Ejemplo: Un sistema simple de telfono tiene 2 lneas externas. Las llamadas que se originan externamente arriban en forma uniforme cada 100 +- 60 segundos. Cuando la lnea est ocupada la persona que llama vuelve a discar despus de 5+- 1 minuto. Las llamadas duran 3+-1 minuto. Se necesita la distribucin de frecuencias para cada llamada que se complete. Cmo ser para completar 100 llamadas
REPETIR
OCUPA
START 100
Simulacin
14
QTABLE QTABLE: inicializa una tabla de distribucin de frecuencia para una cola Nomb_qtabla QTABLE A,B,C,D
A: es el nombre o nmero de la cola.
B: lmite superior de la primera frecuencia. C: incremento D: cantidad de intervalos No se necesita incluir el TABULATE, yq que la medicin del tiempo ser entre el QUEUE y el DEPART de la cola A
FUNCTION
FUNCTION: se utiliza para definir funciones y distribuciones estadsticas. Nombre FUNCTION A,BN X1,Y1/X2,Y2/......./Xn,Yn
A: es el argumento de la funcin que puede ser un nombre, un entero positivo o un SNA
BN: donde B es el tipo de la funcin : C(continua), D(discreta), L(lista) y N es el nmero de pares de puntos que se ingresan
nomb_cola,0,10,50
Ej: Una estacin de servicio ofrece 4 tipos de combustibles. Existen las siguientes preferencias de los clientes: el 40% prefiere 87octanos, 30% prefiere 89 octanos, 20% prefiere 95 octanos y el resto diesel. COMBUSTIBLE FUNCTION RN1,D4 0.40,87/0.70,89/0.90,95/1.0,100
ASSIGN: este bloque se utiliza para asignar o modificar un entero en un parmetro de una transaccin. ASSIGN A,B,C
A: es el nro. del parmetro de la transaccin activa, debe ser incluido necesariamente B: valor C: nombre de un funcin que es opcional Ejemplo: ASSIGN 2,10 ASSIGN SUMA+,1 O ASSIGN RESTO-,3 ASSIGN TIPO,FN$COMBUSTIBLE ASSIGN 1,AC1 El valor del parmetro puedo ser invocado usando el P y el nombre o nro. de parmetro. Ej: TEST E P$TIPO,100,VER
ASSIGN
SAVEVALUE
SAVEVALUE: este bloque cambia el valor de una entidad savevalue (que graba o guarda valores). SAVEVALUE A,B A: es el nombre de la entidad savevalue B: es el valor a reemplazar, sumar o restar Ejemplo: SAVEVALUE 3,5
SAVEVALUE SUMA+,1 O SAVEVALUE RESTA-3 El valor del savevalue puede ser invocado usando X y el nombre del savevalue Ej: TEST G X$SUMA,20,SALIR
Simulacin
15
Preempt
Bloque PREEMPT en su versin elemental: Interrumpe el ADVANCE donde una transaccin est haciendo uso de la FACILITY. Cuando se produce la devolucin del recurso se reanuda el ADVANCE (es decir, se reinicia el ADVANCE con el tiempo que quedaba por hacerse al momento de la interrupcin). Ejemplo:
GENERATE clientes ... QUEUE empleado SEIZE empleado DEPART empleado ADVANCE 60 RELEASE empleado ... TERMINATE
Preempt
PREEMPT A,B,C,D,E A: Facility que se intenta arrebatar B: PR para indicar que es un arrebato con prioridad (el mismo se produce si el que arrebata tiene mayor prioridad que el arrebatado) C: Rtulo al que bifurca la transaccin afectada por el arrebato si la transaccin afectada est en un ADVANCE D: Parmetro de la transaccin afectada por el arrebato donde el GPSS pone el tiempo remanente para terminar el ADVANCE. E: RE para indicar que el arrebato es definitivo (con REMOVE de la FACILITY arrebatada)
Preempt
Cmo se simulan las interrupciones a empleado que suceden concurrentemente con la atencin de clientes por parte de empleado? GENERATE clientes ... QUEUE empleado SEIZE empleado DEPART empleado ADVANCE 60 RELEASE empleado . .. TERMINATE GENERATE interrupciones PREEMPT empleado ADVANCE 15 RETURN empleado TERMINATE El bloque PREEMPT arrebata al recurso que fue tomado por el bloque SEIZE, interrumpiendo el ADVANCE que estuviera ejecutando la transaccin afectada.
Preempt
Existe la posibilidad que se produzcan arrebatos de arrebatos? S, ejecutando el bloque: PREEMPT A,PR A: FACILITY que se intenta arrebatar PR: modalidad de arrebato que determina que el arrebato Se produce si la transaccin que tiene la facility es de menor prioridad que la que hace el PREEMPT A,PR si una transaccin ejecuta un PREEMPT empleado,PR y la prioridad de la transaccin que tiene a empleado es mayor o igual que la que ejecuta el PREEMPT, la transaccin no puede arrebatar a empleado y queda en una PENDING CHAIN
Simulacin
16
Preempt
Cmo podemos simular que la transaccin que sufre el arrebato, debe reiniciar la tarea, o sufre un recargo de tiempo, de 5 segundos, por ejemplo?
GENERATE 60 PRIORITY 100 SEIZE empleado ADVANCE 25 RELEASE empleado SAVEVALUE CUEN+,1 SAVEVALUE X$CUEN,AC1 TERMINATE 1 GENERATE 60,,10 PREEMPT empleado,,DENU ADVANCE 20 RETURN empleado TERMINATE REAN
Preempt
GENERATE 60 PRIORITY 100 ASSIGN 3,25 SEIZE empleado ADVANCE P3 RELEASE empleado SAVEVALUE CUEN+,1 SAVEVALUE X$CUEN,AC1 TERMINATE 1 GENERATE 60,,10 PREEMPT empleado,,DENU,3 RETURN empleado TERMINATE ASSIGN 3+,5 TRANSFER ,RENAN
DENU
DENU
Select
SELECT O A,B,C,D,E Selecciona una entidad y coloca el nmero de esta entidad en un parmetro de la transaccin activa.
FNV - The Facility Entity must be unavailable in order to be selected. Operandos : Special Restrictions FV - The Facility Entity must be available in order to be selected. O Operador condicional operador lgico :FNV, (preempted) FV, I, LS, LR, to NI, NU, I - The Facility u Entity must be currently interrupted in order be selected. LS - The Logicswitch be set in order be selected. Either conditional operator aEntity logical operator SE, SF,aSNE, SNF, SNV,or SV, U,must E, G, GE, L, to LE, MIN, MAX, or NE. is required. LR - The Logicswitch Entity must be reset in order to be selected. A Nombre o nmero del paramtro que recibe el nmero de la entidad NI - The Facility Entity must NOT be currently interrupted (preempted) in order to be selected. seleccionada. NU - The Facility Entity must not be in use in order to be selected. Evaluated entity numbers must be positive SE - The Storage Entity must be empty in order to be selected. B Nmero integers. de la entidad menor. SF - The Storage Entity must be full in order to be selected. C Nmero de la entidad mayor. SNE - The Storage Entity must NOT be empty in order to be selected. D and E are required if Storage O is a conditional SNF - The Entity must NOT be full in order to be selected. D - Opcional. No usado MIN. operator. Other than MIN con or MAX. SNV - The Storage Entity must NOT be available in order to be selected. E Nombre de la clase SNA.Entity must be available in order to be selected. SV - The Storage
When evaluated, U - The C must Facility be Entity greater must than be in or use equal in order to be selected. to B.
Simulacin
17
RN1,D4
GENERATE (UNIFORM(1,15,45)) ASSIGN TIPO,FN$COMBUSTIBLE TEST E P$TIPO,100,VERCOLAS TRANSFER ,IRDIESEL VERCOLAS SELECT MIN MCOLA,COLA1,COLA4,,Q QUEUE P$MCOLA SEIZE P$MCOLA DEPART P$MCOLA ADVANCE (UNIFORM(1,120,420)) RELEASE P$MCOLA TERMINATE
IRDIESEL
Aplicar sentencias alternativas para obtener el mismo resultado. Test Calcular en el modelo, la consumicin promedio de combustible por cliente y tipo. Calcular en el modelo, qu tiempo promedio permanece en el sistema un cliente que compra diesel. Modifique el problema anterior para tratar una falla en los surtidores que en forma aleatoria afecta a cualquiera de los surtidores y se produce en forma exponencial cada 30 minutos. Y deja al surtidor fuera de servicio por 51,5 Preempt minutos. El auto que est en servicio y la cola esperan la reparacin del mismo para seguir la carga de combustible.
1.
LABEL
VERCOLAS
IRDIESEL
ENTRY COUNT CURRENT COUNT RETRY surtidor 117 0 0 diesel? 117 0 0 117 0 0 17 0 0 100 0 0 100 52 0 48 0 0 Cul es el 48 0 0 nmero mximo 48 4 0 de autos 44 0 0 esperando por el 44 0 0 servicio en todos 17 0 0 los surtidores? 17 11 0 6 0 0 6 0 0 6 0 0 6 0 0 6 0 0 1 0 0 1 0 0
Assemble
ASSEMBLE A el comando ASSEMBLE espera y destruye una cantidad de transacciones asociadas por un mismo Assembly Set. Es usado para sincronizacin. Las transacciones relacionadas son destruidas A- cantidad de transacciones. Requerido. Debe ser nombre , posint, SNA, SNA*param) Ejemplo: ASSEMBLE 2 La primera transaccin de un conjunto de reunin (assembly set) es puesta a esperar cuando ingresa en el bloque ASSEMBLE. Cuando otra transaccin del mismo conjunto de reunin ingresa al bloque, sta es destruida y la transaccin que esperaba es permitida para que contine.
FACILITY 1 2 3 4 QUEUE 1 2 3 4
AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY 237.315 1 50 0 0 0 16 248.917 1 53 0 0 0 15 240.910 1 59 0 0 0 15 302.886 1 52 0 0 0 17 AVE.(-0) RETRY 903.818 0 936.798 0 889.026 0 972.960 0
MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME 16 16 31 1 7.532 874.662 15 15 29 1 7.286 904.495 15 15 29 1 6.915 858.370 17 17 28 1 7.297 938.211
Simulacin
18
Assemble- Ejercicio 9
A una mquina llegan pares de componentes (como una unidad) cada 130 segundos. Una vez dentro de la mquina, este par de componentes es desensamblado en 105 segundos. Cada componente se procesa en forma separada demorando 805 segundos (el procesamiento de cada uno de los componentes se realiza en forma simultnea). La mquina slo puede procesar de a un par por vez, los que lleguen detrs esperan en cola. Luego de procesar cada par de componentes, la misma mquina los ensambla en 4020 segundos y los libera, para continuar con el par siguiente. Simular 1000 pares de componentes procesados. Se necesita conocer la cantidad en cola encontrada por cada par de componentes llegados a la mquina, antes de ingresar a la cola.
Assemble- Ejercicio 9
CANTIDAD TABLE MAQUINA STORAGE GENERATE TABULATE QUEUE ENTER DEPART ADVANCE SPLIT ADVANCE TRANSFER Q$COLA,2,2,20 1 130 CANTIDAD COLA MAQUINA COLA 10,5 1,OTRA 80,5 ,SEGUIR
OTRA SEGUIR
Gather
GATHER A funciona como una barrera, esperando que lleguen al mismo la cantidad de transacciones (del mismo assembly set) especificada en su nico parmetro. A- cantidad de transacciones a esperar Es similar al assemble pero no destruye
Link
LINK A,B,[C] Encadena una transaccin a la cadena A. Las transacciones quedan congeladas hasta que otra haga un UNLINK A- nombre o nro. de la cadena donde se encadena la transacc. (nom, posint, SNA) B- disciplina por la cual se encadena (FIFO, LIFO, PR, Pn, M1, etc). Por param. de menor a mayor. Es aconsejable no mezclar disciplinas distintas para una misma cadena (FIFO, LIFO, nom, posint, SNA, SNA*param) C- es a la etiqueta al que van las transacciones en caso de que la cadena este en estado de reset. (nom, posint, SNA*Param. O al que bifurca la primera transaccin de la cadena(no se utiliza en sistema transporte)
Simulacin
19
Unlink
UNLINK [O] A, B, [C], [D], [E], [F] Libera C transacciones encadenadas que cumplen la condicin que se establece relacionando los operandos D y E mediante el operador O. envindolas a la etiqueta B
O. operador relacional entre D y E para seleccionar que transacciones pueden liberarse. (E, G, GE, L, LE, NE). Si no se coloca operador es E (equal). A. nombre o nro. de la cadena desde donde se libera. (nom, posint, SNA, SNA*param) B. rtulo al que van las transacc. liberadas. (nom, posint, SNA, SNA*param) C. [ALL] mxima cantidad de transacciones a liberar. Para que el UNLINK sea Verd. Deben poder liberarse todas las pedidas. DyE definen la condicin que deben cumplir para ser liberadas. D. param, PR, BV, BACK. Si no es BV se comp. con valor de E para ver si se puede liberar (nom, int, SNA, SNA*param, BACK). BACK saca de la cola. E. valor que debe tener parm. D para que la transacc. sea liberada. No se usa con BV en D. (nom, int, SNA, SNA*param) F. Etiqueta alternativa si no se puede cumplir el UNLINK, o sea si no se pueden liberar C transacciones. (nom, posint, SNA, SNA*param)
Pasivas
transportadas
Los que viajan tienen dos momentos en que son objetos pasivos (dependen del colectivo): 1. Cuando esperan el colectivo. No saben cunto tiempo van a estar en la parada ya que ignoran cunto va a tardar en venir el colectivo. 2. Cuando viajan: No saben cunto tiempo van a demorar viajando porque no saben lo rpido que van a llegar a destino.
Transacciones pasivas Pasajeros en la parada Pasajeros viajando en el colectivo Bultos apilados Bultos en la pluma de la gra Expedientes apilados Expedientes bajo el brazo del cadete
Simulacin
20
VUEL
START TIME 0.000 NAME BRA CAD CONTA ENT PILA VUEL LABEL
BLOCKS 16
STORAGES 0
BRA ENT
VUEL
LOC 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
BLOCK TYPE GENERATE ADVANCE LINK LINK SAVEVALUE TERMINATE GENERATE ADVANCE ADVANCE UNLINK ADVANCE UNLINK ADVANCE TRANSFER GENERATE TERMINATE
ENTRY COUNT CURRENT COUNT RETRY 120 0 0 120 1 0 119 3 0 116 4 0 112 0 0 112 0 0 1 0 0 1 0 0 28 0 0 28 0 0 28 1 0 27 0 0 27 0 0 27 0 0 1 0 0 1 0 0
MAX 5 5
Simulacin
21