Em um ambiente de multiprogramação, vários processos podem competir por uma quantidade limitada de recursos. Casos em que processos nunca terminam sua execução, e os recursos do sistema ficam ocupados, impedindo que outros jobs comecem a ser executados, podem ser caracterizados como: