Tecnologia da InformaçãoSincronização e deadlockINEP (ENEM) 2021
ENADE
Questão de Tecnologia da Informação
Durante parte do tempo, um processo está ocupado realizando computações internas e outras coisas que não levam a condições de corrida. No entanto, às vezes, um processo tem de acessar uma memória compartilhada ou arquivos, ou realizar outras tarefas críticas que podem levar a corridas. Essa parte do programa onde a memória compartilhada é acessada é chamada de região crítica ou seção crítica. Se conseguíssemos arranjar as coisas de maneira que dois processos jamais estivessem em suas regiões críticas ao mesmo tempo, poderíamos evitar as corridas. Embora essa exigência evite as condições de corrida, ela não é suficiente para garantir que processos em paralelo cooperem de modo correto e eficiente usando dados compartilhados. Precisamos que quatro condições se mantenham para chegar a uma boa solução. 1. Dois processos jamais podem simultaneamente estar dentro de suas regiões críticas. 2. Nenhuma suposição pode ser feita a respeito de velocidades ou de número de CPUs. 3. Nenhum processo executando fora de sua região crítica pode bloquear qualquer processo. 4. Nenhum processo deve ser obrigado a esperar eternamente para entrar em sua região crítica. Em um sentido abstrato, o comportamento que queremos é mostrado na figura a seguir. A entra na região crítica Processo A

Processo B T T 1 2 Tempo
Mais questões de Sincronização e deadlock
- Fundatec 2026Analise o seguinte programa em Java SE 11: class Contador { int valor = 0; void incrementar() { valor++; } } public class Teste { public static void main(String[] args) throws Exc…
- Selecon 2026Considere a rede de Petri descrita a seguir, com lugares P 0 (Processo 1 ocioso), P (Processo 2 ocioso), R (Recurso 1 livre), 1 1 R (Recurso 2 livre), P (Processo 1 segurando R e…
- Marinha 2026Em um cenário Java onde múltiplas threads estão aguardando uma condição (utilizando 'wait()') sobre o mesmo objeto monitor, qual é a diferença fundamental entre os métodos 'notify…
- Cebraspe 2026Em escalonamento preemptivo por prioridades fixas, se um processo de alta prioridade bloqueia-se em mutex mantido por outro de baixa prioridade, a herança eleva temporariamente a…
- Fundatec 2026Analise o seguinte programa em Java SE 11: class Contador { int valor = 0; void incrementar() { valor++; } } public class Teste { public static void main(String[] args) throws Exc…
Questão de prova oficial, com o gabarito definitivo publicado pela banca. Reproduzida para fins de estudo.


