Semáforos de Sincronização

0

Os semáforos usados para exclusão mútua, que são semáforos binários, contêm 1 como um valor inicial. Quando um processo tenta entrar na região crítica, esse processo faz com que o sistema operacional chame a função wait (). Esta função verifica o valor do semáforo. Se o valor for igual a 1, esse semáforo poderá entrar na região crítica e o valor será decrementado em um. Se o valor for igual a 0, esse semáforo será adicionado à fila de espera.

Isto é realmente o que o método wait () faz em um semáforo binário. Por outro lado, quando eu procuro por que o valor dos semáforos de sincronização é igual a 0, ou o que acontece se os métodos wait () e signal () são chamados nos semáforos de sincronização, não consigo encontrar nenhum conhecimento válido.

Existe alguém que saiba a razão pela qual o valor dos semáforos de sincronização é igual a 0, e que métodos wait () e signal () fazem nos semáforos de sincronização?

    
por Goktug 11.04.2018 / 19:48

0 respostas