jueves, 15 de septiembre de 2011

Bloqueo Mutuo

Dentro de la multiprogramación podemos ver que podemos ejecutar una gama de procesos,pero llega un punto donde estos procesos comienzan a competir por los recursos de la computadora.
Los recursos del sistema se subdividen en variados tipos. Cuando el proceso requiere uno de estos, se le asigna este recurso,siempre que esté  disponible. En el caso de que ese recurso no exista o no esté disponible, pasa a un estado de espera.
En un caso de que no pueda cambiar de este estado de espera, debido a que esta siendo solicitado en la lista de espera por otro proceso, se pasa a otro estado llamado bloqueo mutuo.

El bloqueo mutuo lo definimos como el bloqueo permanente de un conjunto de procesos que compiten por recursos del sistema
Existen tres tipos de bloqueos mutuo:
a.) Cuando un proceso requiere un recurso que esta retenido por otro proceso que está en espera.
b.)Cuando dos procesos P1 y P2 retienen una instancia de un recurso tipo R1 y R2 respectivamente. P1 requiere una instancia del recurso tipo R2 y P2 una instancia del recurso tipo R1.
c.) Cuando un grupo de procesos está esperando un evento que puede ser causado por otro del grupo. 





                                    Imagen 1. Como se asignan los recursos en el pc


Condiciones necesarias para bloqueos mutuos
• Exclusión mutua: Consiste en que solo un proceso ocupa un solo recurso, y así se puede mantener la integridad del sistema
• Retención y espera:Se busca con esta condición, prevenir que todos los procesos pidan recursos al mismo tiempo, que cada proceso pida su recurso a un determinado tiempo
• No apropiación:Es cuando se evita que los procesos eviten de adueñarse de los recursos de la computadora, así cediendo los recursos a medida que sean necesarios por otro proceso.
• Espera circular: la prevención en esto es retardar procesos inesesarios evitando dar recursos inesesarios. Así se mantiene en un círculo vicioso
Estas condiciones deben darse simultáneamente.

3 comentarios:

  1. a nuestro parecer les falta una introducción al tema que nos permita entender de mejor manera el tema, buscando esto en el manual hemos entendido que deadlock produce un estancamiento o estancamiento en los procesos del computador

    ResponderEliminar
  2. concuerdo con el comentario anterior, falta una introduccion, para entender mejor el tema y asi interesarse por este mismo.
    No entendi mucho.

    saludos

    ResponderEliminar
  3. compartimos también lo comentado por u4fundamento, ya que de no ser por el manual no se comprendería el tema, en conclusión el gran problema de los deadlocks parece ser el que no tienen una solución eficiente y los procesos permanecen bloquadospermanecen bloqueados

    ResponderEliminar