Está en la página 1de 2

PRÁCTICA #2.

ALGORITMOS DISTRIBUIDOS

Objetivos:

- Contextualizar los algoritmos distribuidos y su aplicación.


-

Desarrollo:

I. Resolver los siguientes ejercicios de algoritmos distribuidos.

1. Supongamos que dos procesos detectan la muerte del coordinador y ambos deciden
enviar un mensaje de elección usando el algoritmo Bully. ¿Qué sucede?

2. En el enfoque centralizado de la exclusión mutua al recibir un mensaje de un proceso que


está liberando su acceso exclusivo a la región crítica que estaba usando, el coordinador
normalmente otorga permiso al primer proceso de la cola. Proponer otro algoritmo posible
para que lo use el coordinador.

3. También sobre el caso centralizado de la exclusión mutua supongamos que el coordinador


se cae. Provocará esto la caída del sistema? De no ser así, en qué circunstancias pasará
esto? Existe alguna forma de evitar el problema y lograr que el sistema sea tolerante a
fallas del coordinador?

4. ¿Cómo se comparan los algoritmos de manejo de la exclusión mutua, el centralizado y el


distribuido (Ricart y Agrawala), respecto del problema de un único punto de falla?

5. Considere los procesos P1, P2 y P3 que ejecutan en un sistema distribuido. Estos


procesos generan los eventos marcados en la siguiente figura.

a) Indicar tres parejas de eventos ordenados utilizando las relaciones de causalidad


potencial de Lamport.
b) Indicar tres parejas de eventos que sean concurrentes ¿Por qué son concurrentes?
c) Usando los relojes lógicos de Lamport, indique las marcas de tiempo para los
eventos de los procesos anteriores.
d) Usando relojes vectoriales, defina las marcas de tiempo para los eventos de los
procesos anteriores.
II. Realizar un ejercicio de aplicación o simulación de un algoritmo distribuido aplicando
cualquiera de los siguientes algoritmos:

Algoritmos de exclusión mutua


Algoritmos de elección
Algoritmos de detección
Algoritmos de interbloqueo
Algoritmos de enrutamiento
Algoritmos de árboles de expansión mínima
Algoritmos de recorridos de gráficas
Algoritmo distribuido recursivo: ola recursiva
Algoritmos de flujo máximo
Algoritmos tolerantes a fallas

También podría gustarte