A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

TIME, CLOCKS and EVENTS Lamport 1978 por João Paulo Ribeiro Mário Luís Guimarães.

Apresentações semelhantes


Apresentação em tema: "TIME, CLOCKS and EVENTS Lamport 1978 por João Paulo Ribeiro Mário Luís Guimarães."— Transcrição da apresentação:

1 TIME, CLOCKS and EVENTS Lamport 1978 por João Paulo Ribeiro Mário Luís Guimarães

2 Novembro 1998Sistemas Operativos Distribuidos2 Introdução > O conceito do TEMPO é fundamental no nosso modo de viver. > É derivado dum conceito mais básico relativo à ordem em que os acontecimentos ocorrem. > Num Sistema Distribuído tem-se: - Vários processos separados espacialmente; - Comunicam por troca de mensagens; - Mensagens são eventos; - Mensagens podem gerar outros eventos.

3 Novembro 1998Sistemas Operativos Distribuidos3 Introdução (cont.) > Num SD examina-se a ordem de ocorrência dos eventos. > Definição de ORDEM PARCIAL. > Algoritmo distribuído para ordenação lógica dos eventos. > ORDEM TOTAL dos eventos. > Problemática da ordenação total - solução: - RELÓGIOS FÍSICOS e algoritmo de sincronização.

4 Novembro 1998Sistemas Operativos Distribuidos4 > Relação ACONTECE-ANTES (HAPPENS-BEFORE ): - Relação a b : a acontece-antes de b - Verifica as seguintes condições: - Se a e b são eventos dum mesmo processo e a ocorre antes de b, então a b é verdadeiro; - Se a é o envio duma mensagem por um processo e b é a recepção da mesma mensagem por outro processo, então a b é verdadeira; Relação de Ordem Parcial

5 Novembro 1998Sistemas Operativos Distribuidos5 Propriedades da relação Ordem Parcial > TRANSITIVIDADE: - Se a b e b c, então a c > CONCORRÊNCIA DE EVENTOS: - Se os eventos a e b acontecem em processos que não se comunicam, então a b e b a não são verdade; - Eventos a e b são ditos concorrentes. > A relação ACONTECE-ANTES implementa a única ordem parcial de eventos.

6 Novembro 1998Sistemas Operativos Distribuidos6 Exemplo: eventos entre P, Q e R

7 Novembro 1998Sistemas Operativos Distribuidos7 Da Ordem Parcial à Ordem Total > RELÓGIOS LÓGICOS: - Define-se C i como relógio lógico do processo P i - C i (a) é a leitura de C i quando ocorre a em P i - Define-se C(a) = C i (a) se a for evento de P i > Condição do Relógio Lógico C(evento) : - Se a b então C(a) < C(b) > C(evento) é sempre incrementado entre eventos a e b : a b

8 Novembro 1998Sistemas Operativos Distribuidos8 Resultados da Condição de Relógio > C1:Se a e b ocorrem em P i e a b, então C i (a) < C i (b) > C2:Se a e b ocorrem em P i e b é a sua recepção em P j, então C i (a) < C j (b) > R1:Cada processo P i incrementa C i entre dois eventos consecutivos; > R2.a:Evento a é envio da msg. m por P i ; m contém Tm = C i (a) R2.b:Quando da recepção de m, P j altera C j para C j > Tm > FICA VERIFICADA A CONDIÇÃO DE RELÓGIO <

9 Novembro 1998Sistemas Operativos Distribuidos9 Exemplo: relógios lógicos de Lamport

10 Novembro 1998Sistemas Operativos Distribuidos10 Ordem Total Com o algoritmo anterior obtem-se ordem total entre eventos, a => b, sse: C i (a) < C j (b) ou C i (a) = C j (b) e P i P j (precedência entre processos) No entanto, ordem total ainda não é solução: Exemplo: Maria envia msg a da máquina A; Maria telefona a Manuel para este enviar msg b de B; Apesar de msg a telef. msg b, o sistema pode ordenar em primeiro lugar msg b e só depois msg a (depende de C(evento)), pois telef. é exterior ao sistema.

11 Novembro 1998Sistemas Operativos Distribuidos11 Solução para o problema Soluções: Maria e Manuel estampilham manualmente as mensagens; Sistema de relógios que verifique sempre a Condição Relógio anterior: Se msg a msg b então C(a) < C(b) Vamos optar pela segunda solução !

12 Novembro 1998Sistemas Operativos Distribuidos12 Relógios Físicos Define-se C i (t) como o valor do relógio físico de P i no instante real t; Propriedades: Exactidão (P1): (k rel. de cristais), é a medida do desvio dos relógios físicos em relação a t; Precisão (P2):é a medida máxima do afastamento entre os relógios do sistema. É necessário algoritmo distribuído para garantir: – Condição de Relógio (a b então C(a) < C(b)); – Precisão (P2).

13 Novembro 1998Sistemas Operativos Distribuidos13 Algoritmo de sincronização é a duração mínima no envio de uma msg entre dois processos P i e P j, e é a variação máxima dessa duração cada relógio C i avança ao ritmo de P1 quando é recebida msg a com estamp. T a =C i (t a ), no instante t b em P j, C j (t b ) = máx(C j (t b ), T a + ) admitindo um grafo ligando os vários processos, o diâmetro d desse grafo é o número mínimo de arcos ligando quaisquer dois processos. então, se com período » + fôr enviada msg para todos os arcos, Cond. Rel. e P2 são satisfeitas com d.(2k + )

14 Novembro 1998Sistemas Operativos Distribuidos14 Conclusões Importância de ordenação de eventos num sistema distribuído; Ordenação happened-before define ordem parcial única entre eventos; Ordem total depende de C(evento), ou seja, dos relógios lógicos; Ordem total pode resultar em ordenação incoerente com os eventos observados; Relógios físicos resolvem o problema anterior; Algoritmo para realização e sincronização dos relógios físicos;

15 Novembro 1998Sistemas Operativos Distribuidos15


Carregar ppt "TIME, CLOCKS and EVENTS Lamport 1978 por João Paulo Ribeiro Mário Luís Guimarães."

Apresentações semelhantes


Anúncios Google