Sitemas distribuidos sincronizacion

Solo disponible en BuenasTareas
  • Páginas : 18 (4456 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de septiembre de 2010
Leer documento completo
Vista previa del texto
SINCRONIZACIÓN DE SISTEMAS DISTRIBUIDOS

Un sistema distribuido debe permitir el apropiado uso de los recursos, debe encargarse de un buen desempeño y de la consistencia de los datos, además de mantener seguras todas estas operaciones.

La sincronización de procesos en los sistemas distribuidos resulta más compleja que en los centralizados, debido a que la información y el procesamiento semantienen en diferentes nodos. Un sistema distribuido debe mantener vistas parciales y consistentes de todos los procesos cooperativos y de cómputo. Tales vistas pueden ser provistas por los mecanismos de sincronización.

El término sincronización se define como la forma de forzar un orden parcial o total en cualquier conjunto de eventos, y es usado para hacer referencia a tres problemasdistintos pero relacionados entre sí:

* La sincronización entre el emisor y el receptor.
* La especificación y control de la actividad común entre procesos cooperativos.
* La socialización de accesos concurrentes a objetos compartidos por múltiples procesos.

SINCRONIZACIÓN DE RELOGES
Relojes lógicos
Las computadoras poseen un circuito para el registro del tiempo conocido comodispositivo reloj.



Es un cronómetro consistente en un cristal de cuarzo de precisión sometido a una tensión eléctrica que:

• Oscila con una frecuencia bien definida que depende de:
— Al forma en que se corte el cristal.
— El tipo de cristal.
— La magnitud de la tensión.
• A cada cristal se le asocian dos registros:
— Registro contador.
— Registro mantenedor

• Cada oscilación del cristaldecrementa en “1” al contador.
• Cuando el contador llega a “0”:
— Se genera una interrupción.
— El contador se vuelve a cargar mediante el registro mantenedor.

Se puede programar un cronómetro para que genere una interrupción “x” veces por
Segundo. Cada interrupción se denomina marca de reloj.

Es imposible garantizar que los cristales de computadoras distintas oscilen con la mismafrecuencia.

Habrá una pérdida de sincronía en los relojes (de software), es decir que tendrán Valores distintos al ser leídos.

La diferencia entre los valores del tiempo se llama distorsión del reloj y podría generar fallas en los programas dependientes del tiempo.

Lamport fue el primero a probar que es posible sincronizar todos los relojes de un sistema para producir un único padreó detiempo, mostrando que los procesos del sistema no necesitan concordar en la hora actual, pero sí en la orden en que los eventos ocurren. También afirma que los relojes del sistema no necesitan estar sincronizados si los procesos no interagem, ya que la falta de sincronización sería imperceptible y no causaría problemas.
Para sincronizar los relojes lógicos, Lamport definió la relación happens-before(acontece antes de), representada por el símbolo →. Por ejemplo, en la relación a → b, el evento a acontece antes del evento b. De esa forma, es posible sincronizar dos eventos en las siguientes situaciones:

1. Si los eventos a y b acontecen en un mismo proceso, el proceso puede determinar que si a → b es verdad.
2. Si a representa el envío de un mensaje por un proceso y b representael recibimiento de la misma por otro proceso, entonces a → b es verdad.

La relación happens-before es transitiva: si a → b y b → c entonces a → c.
Además de eso, dos eventos a y b son dichos concurrentes se no es posible inferir que a → b o b → a.

Necesitamos una forma de medir el tiempo tal que a cada evento “a”, le podamos
asociar un valor del tiempo “C(a)” en el que todos losprocesos estén de acuerdo:
• Se debe cumplir que:
— Si “a —> b” entonces “C(a) < C(b)”.
— El tiempo del reloj, “C”, siempre debe ir hacia adelante (creciente), y nunca
hacia atrás (decreciente).

El algoritmo de Lamport asigna tiempos a los eventos.

Consideramos tres procesos que se ejecutan en diferentes máquinas, cada una con su
propio reloj y velocidad:1

• El proceso “0”...
tracking img