Please enable JavaScript.
Coggle requires JavaScript to display documents.
Exclusión mutua y Algoritmos de elección - Coggle Diagram
Exclusión mutua y
Algoritmos de elección
Exclusión mutua
Es una propiedad de un sistema distribuido que permite un control concurrente a sus recursos
Evitar que los accesos concurrentes corrompan los recursos o los vuelvan inconsistentes
Clasificación
Soluciones basadas en token
Soluciones basadas en permisos
Algortitmos
Algoritmos
Distribuidos
El acceso a los recursos se consigue
consiguiendo entrar a una “sección critica”
Los nodos consiguen la sección crítica sólo si los demás nodos le conceden acceso, y cuando se libera el recurso, se les notifica a todos
Ventajas
No produce deadlocks (estado de espera continua entre varios procesos sin fin)
No ocasionan cuellos de botella (como en el caso de los algoritmos centralizados) pero es más lento
Algoritmo
Token-Ring
Se basa en el uso de un anillo lógico
vía software
En el anillo, cada proceso tiene asignado un orden numérico y solamente conoce cuál es el número del siguiente nodo
Ventajas
Sencillo de implementar y se recupera
bien de las fallas
Algoritmo
Bully
Cuando algún proceso advierte que el coordinador no esta respondiendo, inicia una nueva elección
Se asume que los procesos conocen quien es
su sucesor
Algoritmo
de Anillo
A diferencia del algoritmo Token-Ring, este
algoritmo de anillo no usa token
Algoritmos de Elección
requieren que un proceso actúen
como coordinador
Ventajas
Permiten elegir a un proceso que
asumirá el rol de coordinador
Garantizan la “obediencia” de los
demás procesos
Algoritmo de elección en ambiente inalámbrico
Los algoritmos tradicionales de elección |funcionan con supuestos que no son reales en ambientes inalámbricos
El paso de mensajes en medios inalámbricos no es confiable y la topología de red está en constante cambio
se da sobre
todo en redes móviles
Algoritmo
Centralizado
Los demás procesos (que actúan como clientes) envían peticiones para acceder a un recurso
Los procesos eligen a un coordinador (que actúa lógicamente como si fuera el servidor)
Similar a un sistema cliente/servidor donde el servidor otorga permisos
Ventajas
Garantiza la exclusión mutua
Acceso justo (las peticiones se atienden en orden de llegada)
Fácil de implementar (solo requiere 3 mensajes: petición, autorización, liberación)