Entrar para responder
Gabriel Nogueira
Há mais de um mês
Deadlock
Um conjunto de entidades de processamento está em situação de deadlock se cada entidade pertencente ao conjunto está bloqueada esperando por um evento (ou recurso) que somente outra entidade no mesmo conjunto pode gerar (ou liberar).
Starvation
Uma entidade de processamento está em inanição quando ocorrem negativas de acesso a um determinado recurso perpetuamente, impedindo que execute o restante das tarefas, sem que a entidade esteja bloqueada.
Starvation é um conceito que não se refere a diretamente a deadlock/livelock.
Starvation é quando um processo não consegue ser executado, de forma alguma, pois sempre existem processos de prioridade maior para serem executados, de forma que o processo "faminto" nunca consiga tempo de processamento.
Quando você executa um processo, ele começa no estado initial
e então vai para o ready
.
O Starvation ocorre quando processos de maior prioridade aparecem sempre que tem um processo de menor prioridade ativo e querendo chamar o kernel. Nesse caso, os processos mais prioritários ficam com acesso ao kernel e o outro processo fica apenas esperando permissão, que nunca chega.
Ele não consegue agir e fica parado, sem fazer nada, ocupando memória e tempo de processamento (visto que o SO tem que fazer o escalonamento dos processos!) do processador sem fazer nada.
Deadlock
Um conjunto de entidades de processamento está em situação de deadlock se cada entidade pertencente ao conjunto está bloqueada esperando por um evento (ou recurso) que somente outra entidade no mesmo conjunto pode gerar (ou liberar).
Starvation
Uma entidade de processamento está em inanição quando ocorrem negativas de acesso a um determinado recurso perpetuamente, impedindo que execute o restante das tarefas, sem que a entidade esteja bloqueada.
Starvation é um conceito que não se refere a diretamente a deadlock/livelock.
Starvation é quando um processo não consegue ser executado, de forma alguma, pois sempre existem processos de prioridade maior para serem executados, de forma que o processo "faminto" nunca consiga tempo de processamento.
Quando você executa um processo, ele começa no estado initial
e então vai para o ready
.
O Starvation ocorre quando processos de maior prioridade aparecem sempre que tem um processo de menor prioridade ativo e querendo chamar o kernel. Nesse caso, os processos mais prioritários ficam com acesso ao kernel e o outro processo fica apenas esperando permissão, que nunca chega.
Ele não consegue agir e fica parado, sem fazer nada, ocupando memória e tempo de processamento (visto que o SO tem que fazer o escalonamento dos processos!) do processador sem fazer nada.
Juliano
Há mais de um mês