Você está na página 1de 12

Sistemas Operacionais

IESP - FATEC
Prof: Gustavo Wagner
gugawag@gmail.com

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1


Capítulo 2
Processos e Threads

2.1 Processos
2.2 Threads
2.3 Comunicação interprocesso
2.4 Problemas clássicos de IPC
2.5 Escalonamento

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 2


Jantar dos Filósofos

• Filósofos comem/pensam
• Cada um precisa de 2
garfos para comer
• Cada filósofo tenta pegar
um garfo por vez
• Como prevenir deadlock?

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 3


Jantar dos Filósofos

• Jantar dos filósofos não é um problema


estudado apenas porque é legal;
• Ele representa a necessidade de alocar
vários recursos para diferentes processos,
sem que ocorra deadlock e/ou starvation;
• Ou mesmo de alocar recursos escassos;

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 4


Jantar dos Filósofos
Uma solução

Uma solução errada para o problema do jantar dos filósofos -


deadlock

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 5


Jantar dos filósofos
Outra solução
• Que tal pegarmos um garfo e se não
conseguir pegar o outro, devolver o garfo e
esperar um tempo fixo?

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 6


Jantar dos filósofos

• Problema de espera de tempo:


– pode chegar a um caso de Starvation;

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 7


Jantar dos filósofos

• E se esperar por um tempo aleatório?

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 8


Jantar dos filósofos

• A maioria das vezes dá certo, mas nem


sempre;
• Essas solução é usada em rede local
Ethernet quando há colisão de pacotes;
• Mas há problemas que exigem que a
solução dê certo sempre: controle de
segurança de uma usina nuclear;

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 9


Jantar dos filósofos

• Que tal usarmos semáforo?


• Vamos proteger as 5 chamadas após o
think() com um semáforo;
• O que acontece?

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 10


Jantar dos Filósofos

Uma solução para o problema do jantar dos filósofos (parte 1)


Pearson Education Sistemas Operacionais Modernos – 2ª Edição 11
Jantar dos Filósofos

Uma solução para o problema do jantar dos filósofos (parte 2)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 12

Você também pode gostar