CHANDY-LAMPORT para la creacion de SNAPSHOTS
Algoritmo para la creacion de snapshoots es decir 'registrar' una foto del estado de cada proceso y cada canl en un entorno sin relog global que es lo normal en sistemas distribuidos.- Elecicion del iniciador Pi graba su propio estado.
- El iniciador genera un mensage especia llamado "Marker" o marcador.
- for j=1 to N except i Pi
- se envia el mensaje a cada Cij canal (N-1) canalse.
- Se empieza a grabar por cda uno de los canales de entrada a Pi Cji (j <> i)
- Si un proceso Pi recibe un marker por un canal Cki
- if( es el prmer Marker)
- Pi graba su propio estado y marca Cki como vacio.
- for j=1 to N exceto i y K(o sea todos los demas)
- Pi envia un Marker a un canal de salida Cik.
- Se empieza a grabar por cda uno de los canales de entrada de Pi Cki excepto i,k.
- else ya se ha recibido un mensaje asi que el se marca el canal Cki y se graban todos los mensages desde que se empezo a grabar Cki y se envian al concetrdor.
Aunque parece lioso basicamente consiste en enviar una señala un canal y el que escucha por ese canal empieza a grabar ese canal. Despues transmte markadores a los otros procesos para que hagan lo mismo. el tema para cuando todos los canales han recibido señal y cada canal se detiene cuando recibe un marcador de ese canal, al final se recogen los mensages intermedios y se recolectan.