lunes, 21 de septiembre de 2015

2.2 Sincronización: relojes físicos, relojes lógicos, usos de la sincronización.


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 se mantienen 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 problemas distintos 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 serialización de accesos concurrentes a objetos compartidos por múltiples procesos.

Haciendo referencia a los métodos utilizados en un sistema centralizado, el cual hace uso de semáforos y monitores; en un sistema distribuido se utilizan algoritmos distribuidos para sincronizar el trabajo común entre los procesos y estos algoritmos.


Actualmente se encuentran disponibles muchos servicios de sincronización a través de "la nube"
Relojes fijos
Los relojes físicos son relojes que: Deben ser iguales (estar sincronizados).
No deben desviarse del tiempo real más allá de cierta magnitud.
En ciertos sistemas es importante la hora real del reloj:
Se precisan relojes físicos externos (más de uno).
Se deben sincronizar: Con los relojes del mundo real.

Relojes lógicos
El software del reloj lógico
El software para el reloj toma generalmente la forma de un manejador de dispositivo, aunque no es un dispositivo de bloque.
La principales funciones del software manejador del reloj son:
Mantener la hora del día o tiempo real
Evitar que los procesos se ejecuten durante más tiempo del permitido.

Usos de la sincronizacion manejo de cache, comunicación en grupo exclusión mutua elección transacciones atómicas e interbloqueo
Sincronización

La sincronización es la coordinación de procesos que se ejecutan simultáneamente para completar una tarea, con el fin de obtener un orden de ejecución correcto y evitar así estados inesperados.
Comunicación en los sistemas operativos distribuidos Memoria Caché

En los sistemas de archivos convencionales, el fundamento para la memoria caché es la reducción de la E/S de disco (lo que aumenta el rendimiento), en un SAD el objetivo es reducir el tráfico en la red.

La copia de memoria caché

Conservar allí los bloques de disco de acceso más reciente, para así manejar localmente los accesos repetidos a la misma información y no aumentar el tráfico de la red. La caché es un área de memoria utilizada para agilizar los procesos de lectura-escritura.

Exclusión mutua

La condición de exclusión mutua se aplica a los os que no pueden ser compartidos. Por ejemplo, varios procesos no pueden compartir simultáneamente una impresora.

Los archivos de sólo lectura son un buen ejemplo de recurso que puede compartirse. Si varios procesos intentan abrir un archivo de sólo lectura al mismo tiempo, puede concedérseles acceso al archivo de forma simultánea. Un proceso no necesita esperar nunca para acceder a un recurso compartible.

La exclusión mutua permite compartir un recurso con varios procesos

Algoritmos de Elección

Son los algoritmos para la elección de un proceso coordinador, iniciador, secuenciador. El objetivo de un algoritmo de elección es garantizar que iniciada una elección ésta concluya con el acuerdo de todos los procesos con respecto a la identidad del nuevo coordinador.

Transacción atómica, transacción o acción atómica

La principal propiedad de la transacción atómica es el “todo o nada”: O se hace todo lo que se tenía que hacer como una unidad o no se hace nada.
Un esquema para garantizar la adecuada sincronización de la información en sistemas centralizados como distribuidos es el uso de transacciones.
Las transacciones manejan 4 propiedades básicas: atómicas, consistentes, aisladas y durables (ACID por sus siglas en inglés).




No hay comentarios:

Publicar un comentario