- - - - CENAPAD-MGCO

contents index A seguir: Algoritmo de Maekawa - Acima: Maekawa (1985) Anterior: Mensagens


Algoritmo de Maekawa - Cliente i

1.
Requisição : o cliente envia request(OSN, i) para todos os seus árbitros j, e faz Failed[j] := Inquiring[j] := FALSE;
2.
Recepção de locked(Tk, k) : o cliente faz A[k] := TRUE e
Failed[k] := FALSE;

3.
Começa a comer : se A[j] = TRUE para todos os árbitros, passa a utilizar o recurso;

4.
Recepção de inquire(Tk, k) : se Failed[j] = TRUE para algum árbitro j, o cliente envia relinquish(Ti,i) para o árbitro k;
senão, faz Inquiring[k] := TRUE;

5.
Recepção de failed(Tk, k) : o cliente faz Failed[k] := TRUE, e envia relinquish(Ti, i) para todo árbitro j tal que Inquiring[j] = TRUE; após o envio, faz Inquiring[j] := FALSE;

6.
Liberação : o cliente envia release(Ti, i) para todos os seus árbitros;


Osvaldo Carvalho - Postscript - Comentários?