O Projeto Java
Por: Jason123 • 2/6/2017 • Projeto de pesquisa • 383 Palavras (2 Páginas) • 227 Visualizações
Semaforos
1) Explique o que são e como funcionam os Semaforos.
R:São um mecanismo de sincronização que permite implementar
, de forma simples,, a exclusão mutua e a sincronização
condicional entre os processos.
São inteiros não-negativos que podem ser acedidos por
duas operações: P() e V().
2)Descreva o funcionamento da Operação P() ou Down() de um
Semaforo.
R:
-Sempre que desejar entrar na sua regia critica, um processo
executa uma instrução Down.
-Se o semaforo for igual a 1, esse valor é decrementado,e
o processo que solicitou a operação pode executar as
instruções de sua região Critica.
- De outra formar, se uma instrução Down for executada em
um semaforo com o valor igual a 0 , o processo fica impedido
do acesso, permanecendo numa fila em estado de espera.
3)Descreva o funcionamento da Operação V() ou Up() de um
Semaforo.
R:
- O processo que esta acessando o recurso, ao sair de uma
região critica, executa uma instrução Up,e, se nenhum processo
estiver aguardando a utilização do recurso, o valor do semaforo
sera incrementado , liberando o acesso ao recurso
- Porem, se houver um ou mais processos esperando pelo uso
do recurso (operações Down Pendentes), o sistema selecionara
um processo na fila de espera associada ao recurso e alterara
o seu estado para pronto, permitindo a entrada desse outro
processo na regiao critica.
4) Qual a diferença entre o sincronismo de método Produtor/Consumidor para o Semáforo.
R:No sincronismo do Produtor/Consunmidor era apenas a exclusão mutua
ao utilizar semaforos a podemos implementar a exclusão e o sincronismo entre os processos
assim ficando mais facil o controle de sincronização de thread.
5) É possível ter mais de um processo acessando um recurso
crítico utilizando Semáforo em Java? Por que?
R: Não, porque todos os outros que não estão na regiao critca
possuem
...