Após um bimestre do curso de Sistemas Operacionais, ministrado pelo professor Edgar Toshiro Yano, temos condições para desenvolver programas para abordar diferentes soluções para problemas de sincronização de vários processos.
Nos posts seguintes abordaremos os seguintes conceitos: threads, criação de processos filhos, semáforos, mutex e pipes.
Para utilizar os conceitos acima, vamos desenvolver soluções para os seguintes problemas clássicos:
- Produtores e Consumidores ( http://en.wikipedia.org/wiki/Producers-consumers_problem)
- Jantar dos Filósofos (http://en.wikipedia.org/wiki/Dining_philosophers_problem)
- Barbeiro Sonolento (http://en.wikipedia.org/wiki/Sleeping_barber_problem)
- Leitores e Escritores (http://en.wikipedia.org/wiki/Readers-writers_problem)
Nestes problemas clássicos, os conceitos serão utilizados para criar soluções consistentes a todos estes programas. Soluções falhas a cada um desse problemas levam a condições de deadlock, problemas de corrida e starvation. Em um sistema operacional, estes problemas podem acarretar em um sério comprometimento de seu funcionamento e integridade. Assim, é necessário assegurar que tais situações não ocorrerão!
Mais informações sobre estes problemas podem ser encontrados abaixo:
Deadlock: http://en.wikipedia.org/wiki/Deadlock
Race Condition: http://en.wikipedia.org/wiki/Race_condition
Starvation: http://en.wikipedia.org/wiki/Resource_starvation
Além disso, uma boa referência bibliográfica é o livro:
MODERN OPERATING SYSTEMS 2nd ed - A.S.TANENBAUM
quinta-feira, 7 de maio de 2009
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário