Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Sicronização do uso do Microondas em Big Bang Theory

No description
by

Jeferson Neto

on 3 July 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Sicronização do uso do Microondas em Big Bang Theory

Sincronização do uso do Micro-ondas em The Big Bang Theory
Missão entregue por Samuel
Sincronizar o processo usando Pthread, mutex e variáveis de condição,

e ainda
Evitar inanição;
Tratar deadlock.
Dificuldade na Programação
A primeira dificuldade encontrada
foi a falta de familiaridade com a programação usando Pthreads, Mutex e variáves de condição.

Nós gastamos um tempo considerável
consertando erros de sintaxe, e pensando em como fazer em poucas linhas de código.
Conclusion
Motivação

Sheldon, Leonard e Howard compraram um micro-ondas juntos.

E como todos estão sempre na casa do Sheldon e do Leonard, sempre haverá alguém para esquentar algo no micro-ondas.

Após a Programação da estrutura
Após a programação da estrutura veio a parte mais difícil.

Como sincronizar o uso do microondas ???
Quem Usa
Para decidir quem pode usar o forno, definiram o seguinte conjunto de regras:

Se o micro-ondas estiver liberado, quem chegar primeiro pode usar.

Se mais de uma pessoa estiver esperando para usar, devem obedecer as regras:
– Sheldon pode usar antes do Howard;
– Howard pode usar antes do Leonard;
– Leonard pode usar antes do Sheldon.

Solução
Utilização da pthread_mutex_lock() e pthread_mutex_unlock() para que
os personagens não utilizem o forno ao mesmo tempo.
Ex: Se Sheldon estiver ultilizando o forno, Howard nao pode utilizar, e vice e versa.
Utilização da pthread_cond_wait() para fazer as threads dormirem.

Ex: Sheldon ou Amy querem usar o forno, mas se Howard ou Bernadete estiverem querendo usar, Sheldon ou Amy dorme.

Utilização da pthread_cond_signal()
para liberar o forno micro-ondas e
acordar o próximo da fila.

Ex: Sheldon ou Amy dormem querendo usar o forno, e quando o forno estiver liberado e for a vez deles, eles recebem o sinal.
Podemos concluir que a sincronização de threads é uma tarefa importante no meio da programação tanto atual quanto antiga.
E a realização desse trabalho nos permitiu entender melhor e adquirir conhecimento prático e teórico sobre o seu funcionamento.
Solução
Full transcript