Buscar

Resolução Lista Capítulo 11 - TEMPO E ESTADOS GLOBAIS

Prévia do material em texto

Sistemas Distribuídos
LISTA DE EXERCÍCIOS - TEMPO E ESTADOS GLOBAIS
SEÇÃO 11.1
1) Descreva algumas aplicações que mostram a importância de se medir precisamente o tempo em sistemas distribuídos.
O tempo é um problema importante e interessante nos sistemas distribuídos. Primeiro, ele é uma quantidade que frequentemente desejamos medir precisamente. Para saber que hora do dia um evento específico ocorreu em um computador em particular é necessário sincronizar seu relógio com uma fonte de tempo externa confiável e aceita por todos. Segundo, foram desenvolvidos algoritmos que dependem da sincronização do relógio para vários problemas de distribuição.
2) Explique por que contar o tempo é uma dificuldade em sistemas distribuídos.
O problema é baseado em uma limitação semelhante em nossa capacidade de indicar o tempo de eventos, em diferentes nós, de modo suficientemente preciso, para saber a ordem em que quaisquer dois eventos ocorreram, ou se eles ocorreram simultaneamente. Não existe um tempo global absoluto ao qual possamos recorrer.
SEÇÃO 11.2
3) Quando dois eventos podem ser considerados simultâneos?
Dois eventos são simultâneos se o tempo entre suas ocorrências é menor que a resolução do Relógio.
4) Descreva os conceitos de “desvio de relógio” e “derivação de relógio”.
A diferença instantânea entre as leituras de quaisquer dois relógios é chamada de distorção (skew). Derivação do relógio (drift) significa que eles contam o tempo com velocidades diferentes e, portanto divergem.
SEÇÃO 11.3
5) Qual a diferença entre sincronização interna e externa?
Enquanto a sincronização externa sincronizam os relógios Ci dos processos em um sistema distribuído com uma fonte externa de referência, na sincronização interna Os relógios Ci são sincronizados, entre si, com um grau de precisão conhecido.
6) Caracterize alguma estratégia para sincronização em sistemas distribuídos síncronos.
Um processo envia o tempo t de seu relógio para outro processo em uma mensagem m.
‣ Seja u a incerteza no tempo de transmissão de uma mensagem: u = Tmax - Tmin
‣ Processo destino configura seu relógio como t+((Tmax + Tmin)/2)
7) Como é o método de Cristian para sincronização de relógios?
Cristian sugeriu o uso de um servidor de tempo conectado a um dispositivo que recebe sinais de uma fonte UTC para sincronizar computadores externamente. Ao receber uma requisição o processo servidor S fornece o tempo de acordo com seu relógio.
8) Descreva algum algoritmo para sincronização interna.
Um computador é selecionado como mestre (coordenador) e os demais são denominados escravos. O mestre recebe os valores dos relógios dos escravos e calcula a média. Envia para cada escravo seu desvio em relação à média.
9) Para que serve o “Network Time Protocol”? Quais são suas principais características?
Serve para definir a arquitetura de um serviço para distribuição de informações de tempo pela Internet. Os principais objetivos de projeto e características do NTP são os seguintes:
•Fornecer um serviço que permita aos clientes na Internet serem sincronizados precisamente com o UTC.
•Fornecer serviço confiável que possa sobreviver a longas perdas de conectividade.
•Permitir que os clientes sejam sincronizados de forma suficientemente frequente para compensar as taxas de derivação encontradas na maioria dos computadores.
10) Explique o que é e como funciona o relógio lógico (de Lamport).
O relógio lógico de Lamport é um contador de software que aumenta a contagem monotonicamente, cujo valor não precisa ter nenhum relacionamento em particular com qualquer relógio físico.Cada processo p mantém seu próprio relógio L, que utiliza para aplicar as conhecidas indicações de tempo de Lamport nos eventos. Denotamos a indicação de tempo do evento e em p, como L(e) e com L(e), a indicação de tempo do evento e no processo em que ela ocorreu.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes