Bloqueos En Los Sistemas Distribuidos
1)Sincronizacion de relojes: para la sincronizacion de sistemas distribuidos no se pueden utilizar los mismos metodos que para un sistema centralizado, como semaforos o monitores ya que estas son implicitos con la maquina y pueden haber problemas, por ejemplo que dos procesos que interactuan con un semaforo deben tener acceso a el, trabajando en la misma maquina el semaforo se guardaria en el nucleo y se realizan llamadas al sistema, pero de estar en maquinas separadas esto ya no funcionaria, o casos donde se necesite saber si un evento ocurre antes que otro. Para esto es necesario la utilizacion de relojes, los hay logicos y fisicos. Los logicos son los que se encargan de la sincronizacion de …ver más…
El segundo algoritmo es el de anillos, cada proceso conoce su sucesor (pdf 159)
4)Transacciones Atómicas: [transaccion → registro de cambio] una transaccion se puede tomar como un contrato hasta no firmar, se puede cancelar y dejar todo como antes. Se necesita que las aplicaciones como transacciones atomicas sean de un alto grado de tolerancia de fallas. Tiene una primitivas unas funciones basicas como escribir- leer. Si una transaccion no se puede hacer completa no se guarda nada y todo sigue como si nada. Tiene unas propiedades fundamentales (ACID) (PDF 164)
transacciones anidadas. Una transaccion puede tener subtrnsacciones por lo general transacciones anidadas.
Implantacion:1)espacio de trabajo privados: otorgar un espacio de trabajo particular a cada proceso en el momento que se realice una transaccion. 2)bitacora de escritura anticipada(lista de intenciones): se escribe en un espacio de almacenamiento estable para indicar la transaccion que realiza el cambio, el archivo y bloque de modificados y los valores anterior y nueva. Solo despues de escribir en la bitacorase hace el cambio en el archivo 3)protocolo de compromiso de dos faces: (PDF 169)
control de concurrencia(mantener a cada proceso lejos del camino del otro).
Cerradura: cuando un proceso necesita leer o escribir en