UNIME Especialidade: CST em Redes de

Propaganda
UNIME
Especialidade: CST em Redes de Computadores
Disciplina: 117409 Fundamentos de Sistemas Operacionais
Turma: 118420132A-1 ( 2º semestre )
Aluno(a): ______________________________________________________________________
Exercício sobre o Capítulo 2
do Livro "Sistemas Operacionais Modernos"
de Andrew S. Tanenbaum
1. Com relação aos estados de um processo:
•
•
por que os processos não podem iniciar no estado “executando” mesmo quando não há
processos prontos? Dê um motivo para isso ocorrer.
por que os processos que terminam E/S voltam ao estado “pronto” ao invés de
“executando”?
2. Na figura 1 são mostrados três estados de processos. Na teoria, com três estados poderia haver
seis transições, duas para cada estado. Contudo, somente quatro transições são mostradas. Há
alguma circunstância na qual um delas ou ambas as transições não ilustradas possam ocorrer?
3. Mostre como uma máquina virtual Java pode ser vista como uma implementação de threads em
nível de usuário.
4. Quais as desvantagens da implementação de threads em nível de kernel?
5. Por que um sistema operacional que suporta threads não deve escalonar processos?
6. Explique através de um exemplo a política de escalonamento de processos round robin.
7. Calcule o tempo médio de execução considerando um sistema operacional monoprocessado em
lote para as políticas de escalonamento FCFS, LIFO e SJF e os processos: (A, 131), (B, 35), (C,
235), (D, 12), (E, 125), (F, 10) e (G, 33). Formato: (processo, tempo).
8. Quais problemas podem ocorrer se um sistema operacional escolher desabilitar interrupções para
garantir acesso exclusivo a uma região crítica?
9. Por que a solução de Dekker não é boa para garantir comunicação entre processos?
10. Quais são as deficiências da solução de Petersen?
11. Por que uma instrução Test, Set and Lock (TSL) é necessária com uma ajuda do hardware para
que a comunicação entre processos através de uma variável compartilhada ocorra sem problemas?
12. O que é o problema da inversão de prioridade?
13. Mostre uma situação no programa com sleep e wakeup para o problema dos produtores e
consumidores que leva todos a dormir.
14. Mostre no código com semáforos para o problema dos produtores e consumidores que a troca de
ordem dos semáforos pode levar a um deadlock.
15. o que é um mutex?
16. O que são monitores?
17. A troca de mensagens é uma técnica bastante utilizada na comunicação entre processos que
estão em computadores distintos em uma rede. Esta técnica também pode ser usada em processos
no mesmo computador? Como?
18. Como funcionam as barreiras?
Download