aluna
Um detector de falha é um serviço que permite determinar se um processo em particular falhou. Em geral, é implementado por um objeto local que executa um algoritmo de detecção de falha, em conjunto com seus correlatos em outros processos.
2) Explique as principais métricas para avaliação de desempenho de algoritmos que envolvem a coordenação de processos em sistemas distribuídos.
- A largura de banda consumida, que é proporcional ao número de mensagens enviadas em cada operação de entrada e saída
- O atraso do cliente acarretado por um processo em cada operação de entrada e saída
- O efeito do algoritmo sobre a taxa de rendimento (throughput) do sistema. Trata-se da velocidade com que o conjunto de processos como um todo pode acessar a seção crítica. A taxa de rendimento é maior quando o artaso da sincronização é mais curto.
3) Explique o algoritmo de servidor central para exclusão mútua.
O modo mais simples de obter exlusão mútua é empregar um servidor que conceda permissão para entrar na seção crítica. Para entrar em uma seção crítica, um processo envia uma mensagem de pedido para o servidor e espera uma resposta. Conceitualmente, a resposta consittui um token significando permissão para entar na seção crítica. Se nenhum outro processo tiver o token no momento do pedido, então o servidor responderá imediatamente, concedendo o token. Se o token estiver de posse de outro processo, então o servidor não responderá, mas enfilerará o pedido. Na saída da seção crítica, uma mensagem é enviada para o servidor, devolvendo o token a ele.
4) Apresente um exemplo para explicar o algoritmo baseado em anel para exclusão.
Uma das maneiras mais simples de constituir a exclusão mutua entre os N processos, sem exigir um processo adicional, é organizá-los em um anel lógico. Isso exige apenas que cada processo tenha um canal de comunicação com o processo seguinte no anel. A