Bloqueio
Um bloqueio ocorre quando cada computador aguarda um recurso que outro processo está mantendo. É importante evitar um bloqueio antes que ele possa ocorrer. A agenda de recursos pode detectar uma ocorrência de bloqueio, ajudando o sistema operacional a monitorar recursos alocados para diferentes processos. Um bloqueio pode ocorrer se as quatro condições a seguir acontecerem simultaneamente:
•Nenhuma ação preventiva – um recurso só pode ser liberado voluntariamente pelo processo que o mantém depois do processo ter concluído sua tarefa.
•Exclusão mútua – um tipo especial de semáforo binário usada para controlar o acesso ao recurso compartilhado. Permite que tarefas atuais de prioridade superior sejam mantidas bloqueadas pelo menor tempo possível.
•Manter e esperar – nessa condição, os processos devem ser impedidos de manter recursos individuais ou múltiplos enquanto aguardam simultaneamente um ou mais outros.
•Espera circular – impõe uma ordem total de todos os tipos de recursos. A espera circular também requer que todos os processos solicitem recursos em uma ordem da enumeração que vai aumentando.
Existem três formas de lidar com um bloqueio:
•Não deixe o sistema em um estado de bloqueio.
•Deixe o bloqueio acontecer e tente evitá-lo enquanto ele ocorre.
•Se ocorrer um bloqueio, reinicie o sistema.