Principios

Bloqueo permanente de un conjunto de procesos que compiten por los recursos del sistema o bien se comunican con otros. Ninguno de los procesos que compiten por los recursos o interactúan entre sí puede avanzar por carecer de algún recurso o esperar a que se produzca un evento.
  • Recursos reutilizables: puede ser utilizado por un proceso y no se agota por el uso del mismo. Los procesos obtienen unidades de recursos que liberan posteriormente para que otros procesos las reutilicen (procesador, memoria principal, dispositivos de E/S, etc.)
  • Recursos consumibles: son creados y destruidos, producidos y consumidos. Cuando un proceso adquiere un recurso, éste queda excluido del sistema. Normalmente no hay límite en el número de recursos consumibles de un tipo particular, la única restricción está impuesta por la capacidad de almacenamiento temporal del sistema.
Condiciones de interbloqueo: 
  • Exclusión mutua: sólo un proceso puede usar un recurso simultáneamente.
  • Retención y espera: un proceso retiene unos recursos asignados mientras espera que se le asignen otros.
  • No expropiación: ningún proceso puede ser forzado a abandonar un recurso que retenga.
  • Espera circular: las anteriores causas son las más importantes pero no son suficientes. Se debe dar también el caso de que exista una cadena cerrada de procesos, cada uno de los cuales retiene, al menos, un recurso que necesita el siguiente proceso de la cadena para continuar su ejecución (círculo vicioso).