Barbeiro Dorminhoco

723 palavras 3 páginas
Lab 3 – Semáforos:

O Barbeiro Dorminhoco

• Se não há clientes, o barbeiro adormece;
• Se a cadeira do barbeiro estiver livre, um cliente pode ser atendido imediatamente; • O cliente espera pelo barbeiro se houver uma cadeira de espera vazia.
• Se não tiver onde sentar, o cliente vai embora ...
Ver em http://www.ic.unicamp.br/~islene/mc514/barbeiro/barbeiro.pdf

Outra descrição: O Problema do Barbeiro Dorminhoco (com threads) http://ces33.blogspot.com.br/2009/05/o-problema-do-barbeiro-dorminhococom_07.html Em ciência da computação, o problema do barbeiro dorminhoco é um problema clássico de comunicação inter-threads e sincronização entre múltiplas threads.
O problema é análogo a manter o barbeiro ocupado enquanto há clientes, e descansando quando não há nenhum (fazendo isso de uma maneira ordenada).
O barbeiro e seus

clientes correspondem

as threads mencionadas acima.

O problema: Na barbearia há um barbeiro, uma cadeira de barbeiro e n cadeiras para eventuais clientes esperarem a vez. Quando não há clientes, o barbeiro senta-se na cadeira de barbeiro e cai no sono. Quando chega um cliente, ele precisa acordar o barbeiro. Se outros clientes chegarem enquanto o barbeiro estiver cortando o cabelo de um cliente, eles se sentarão (se houver cadeiras vazias) ou sairão da barbearia (se todas as cadeiras estiverem ocupadas).
O problema é programar o barbeiro e os clientes sem cair em condições de disputa
(condições de corrida) (race conditions). Condições de disputa são situações em que duas ou mais threads (ou processos) estão trabalhando juntas e podem compartilhar algum armazenamento comum que cada uma pode ler e gravar. O resultado final depende de quem executa precisamente quando. Os resultados da maioria dos programas são bons, mas, de vez em quando, acontece algo estranho e inconsistente.
Esse problema é semelhante a situações com várias filas, como uma mesa de atendimento de telemarketing com diversos atendentes e com um

Relacionados

  • O Barbeiro Dorminhoco
    318 palavras | 2 páginas
  • Barbeiro Dorminhoco
    784 palavras | 4 páginas
  • solução barbeiro dorminhoco
    863 palavras | 4 páginas
  • Barbeiro
    542 palavras | 3 páginas
  • condiçoes de disputa
    369 palavras | 2 páginas
  • Problemas Classicos SO
    477 palavras | 2 páginas
  • Algorítimo barbeiro
    681 palavras | 3 páginas
  • Sistemas Operacionais
    1558 palavras | 7 páginas
  • Tp so
    2251 palavras | 10 páginas
  • Mecanismos de sincronização de processos e aplicações concorrentes
    2274 palavras | 10 páginas