Exclusão mútua na sincronização
Durante a execução simultânea de processos, os processos precisam entrar na seção crítica (ou na seção do programa compartilhada entre os processos) às vezes para execução. Pode acontecer que, devido à execução de vários processos ao mesmo tempo, os valores armazenados na seção crítica se tornem inconsistentes. Em outras palavras, os valores dependem da sequência de execução das instruções - também conhecida como condição de corrida . A principal tarefa da sincronização de processos é livrar-se das condições de corrida ao executar a seção crítica.
Isso é alcançado principalmente por meio da exclusão mútua .
A exclusão mútua é uma propriedade de sincronização de processo que afirma que “não podem existir dois processos na seção crítica em qualquer ponto do tempo”. O termo foi cunhado pela primeira vez por Djikstra. Qualquer técnica de sincronização de processos em uso deve satisfazer a propriedade de exclusão mútua, sem a qual não seria possível se livrar de uma condição de corrida.
Para entender a exclusão mútua, vamos dar um exemplo.
Exemplo:
Na seção de roupas de um supermercado, duas pessoas estão comprando roupas.
O menino A decide comprar algumas roupas e vai ao vestiário para experimentá-las. Agora, enquanto o menino A está dentro do vestiário, há uma placa de 'ocupado' - indicando que ninguém mais pode entrar. A menina B tem que usar o vestiário também, então ela tem que esperar até que o menino A termine usando o vestiário.
Assim que o menino A sai do vestiário, a placa muda de 'ocupado' para 'vago' - indicando que outra pessoa pode usá-lo. Assim, a menina B passa a usar o vestiário, enquanto a placa mostra 'ocupada' novamente.
O vestiário nada mais é do que a seção crítica, o menino A e a menina B são dois processos diferentes, enquanto a placa do lado de fora do vestiário indica o mecanismo de sincronização do processo em uso.
Aprenda todos os conceitos do GATE CS com aulas gratuitas ao vivo em nosso canal do youtube.
Aprendendo inglês e usando o Anki? Use o Faluchu e esqueça os cartões. É gratis!
Usar o Faluchu