Sistemas de Computação 1 - Prova Extra
PUC-Rio - 11/07/95
-
Questão 1 - P1 de 94.1
Considere o problema dos macacos, apresentado no livro texto.
Abaixo são apresentadas três soluções para o problema.
-
Nas duas primeiras:
-
Faça uma análise explicando se a solução permite que os macacos
atravessem o precipício sem ocorrência de deadlock.
-
Caso a resposta no ítem anterior seja afirmativa, discuta as
desvantagens apresentadas pela solução.
- A terceira solução pode seguramente levar a situações
de deadlock.
Descreva uma seqüência de acontecimentos que faria isto ocorrer,
explicando o comportamento do programa neste caso.
-
#define FALSE 0
#define TRUE 1
sem mutex = 1;
int cruzandoOeste = FALSE; int cruzandoLeste = FALSE;
CruzaOeste() CruzaLeste()
{ /* simetrico a CruzaOeste() */
int consegui = FALSE;
repeat
P(mutex)
if (!cruzandoLeste){
cruzandoOeste = TRUE;
consegui = TRUE;
}
V(mutex);
until (consegui);
Cruza();
cruzandoOeste = FALSE;
V(mutex);
}
-
sem oeste = 0; sem leste = 1;
CruzaOeste() CruzaLeste()
{ {
P(oeste); P(leste)
Cruza(); Cruza();
V(leste); V(oeste);
} }
-
int cruzandoLeste
-
- O que é o mecanismo de swapping?
- O que é o `èscalonamento em dois níveis'' que é
usado em sistemas com swapping?
- Em todo sistema com memória virtual, alguma política de
substituição de páginas tem que ser adotada.
- Qual a influência que a escolha desta política tem sobre o
funcionamento do sistema?
- Por que a política LRU é difícil de implementar sem
suporte de hardware? (pense no que teria que ser feito para
implementá-la por software)
- Suponha que um disco com blocos de 512 bytes é usado em
determinado sistema.
Quais seriam as vantagens e desvantagens do sistema operacional
alocar sempre espaço a arquivos em unidades de dois blocos consecutivos?
Noemi Rodriguez
Wed Jun 23 11:31:26 EST 1999