Relatório: Exclusão Mútua
Por: kamys17 • 30/12/2017 • 730 Palavras (3 Páginas) • 305 Visualizações
...
neste caso __sync_fetch_and_or. A operação é dita atômica
pois cada thread é tratada como única e a variável compartilhada é incrementada como se fosse
dada somente em uma instrução, sendo assim as outras threads não enxergam a incrementação
da variável compartilhada, somente veem seu valor final. A solução se demonstra funcional,
porém apresenta tempo de execução superior às soluções subsequentes, devido à utilização da
operação atômica.
A instrução XCHG (me5-xchg.c)
Compilando e rodando o programa me5-xchg.c obtém-se o resultado presente na próxima
figura.
No programa me-xchg.c é utilizada uma estrutura do tipo Test-and-Set Lock, construída
com a instrução de máquina XCHG (Exchange Registe/Memory with Register) da plataforma Intel.
A instrução XCHG é utilizada para realizar a troca de dados entre 2 localidades. Funciona da
seguinte forma: 1 é escrito em um register, no caso, os conteúdos do register e da variável lock
são trocados. Quando o processo deseja sair da região crítica ele chama a função de saída e
coloca 0 no lock. Enquanto o lock estiver livre o processo obtém seu valor.
A solução se demonstra funcional, apresentando tempo de execução inferior à anterior,
porém superior às soluções subsequentes.
Com semáforos (me6-semaphore.c)
Compilando e rodando o programa me6-semaphore.c obtém-se o seguinte resultado:
O programa me6-semaphore.c se utiliza de um semáforo genérico POSIX. O semáforo
bloqueia a entrada da seção crítica por uma thread casa haja outra thread já presente na seção,
sendo que, quando uma thread deixa a seção crítica, outra imediatamente entra na seção. A
solução se demonstra válida, sendo mais rápida que as anteriores e não só mais rápida que a
última solução a ser apresentada.
Com Mutex (me7-mutex.c)
Compilando e rodando o programa me7-mutex.c obtém-se o seguinte resultado:
O programa me7-mutex.c se utiliza de um mutex POSIX para controlar a entrada na seção
crítica. A solução se apresenta válida, sendo a mais rápida dentre todas as apresentadas nesta
atividade prática.-se o seguinte resultado:
...