Exercícios Do Capitulo 2 Tanenbaum (Parte 2)
Exercícios Do Capitulo 2 Tanenbaum (Parte 2)
Exercícios Do Capitulo 2 Tanenbaum (Parte 2)
R.: Sim, já que o processo 1 é executado primeiro. Porém não funcionaria com não preemptivo,
já que o valor inicial do turn é 0.
R.: Não, pois no modelo circular é necessário alocar um tempo de execução para cada
processo, evitando a competição de tempo de uso na CPU. Diferentemente do escalonamento
de prioridade, cujo uso da CPU é dado pela prioridade do processo, podendo haver
dependência de dados entre processos de prioridade alta e baixa.
R.: Sim, quando programas não são implementados corretamente existe a possibilidade de
programas não relacionados afetarem uns aos outros pelo uso dos recursos disponíveis pelo
sistema, como espaço de memória ou ciclos do processador.
R.: Sim, o uso de semáforo resolveria o problema de perda de sinal através de ações atômicas,
ou seja, de forma indivisível.
R.: Para que se possa atender todas as condições é necessário corrigir o processo P1, pois
ele não deixa o P0 acessar a região crítica.
33- Se um sistema tem apenas dois processos, faz sentido usar uma barreira para sincronizá-
los? Por que ou por que não?
R.: Sim, é possível usar uma barreira para que os dois processos possam partir juntos a partir
de um determinado ponto/tempo.
37- Suponha que temos um sistema de transmissão de mensagens usando caixas de correio.
Quando envia para uma caixa de correio cheia ou tenta receber de uma vazia, um processo
não bloqueia. Em vez disso, ele recebe de volta um código de erro. O processo responde ao
código de erro apenas tentando de novo, repetidas vezes, até ter sucesso. Esse esquema leva
a condições de corrida?
R.: Sim. A mensagem só poderá ser recebida quando ambos lados tiverem recursos para
serem compartilhados, ou seja, quando ambos estiverem fora da região crítica.
R.: 6
R.: ??
45 - Cinco tarefas em lote, A até E, chegam a um centro de computadores quase ao mesmo
tempo. Elas têm tempos de execução estimados de 10, 6, 2, 4 e 8 minutos. Suas prioridades
(externamente determinadas) são 3, 5, 2, 1 e 4, respectivamente, sendo 5 a mais alta. Para
cada um dos algoritmos de escalonamento a seguir, determine o tempo de retorno médio do
processo. Ignore a sobrecarga de chaveamento de processo.
(a) Circular.
(b) Escalonamento por prioridade.
(c) Primeiro a chegar, primeiro a ser servido (siga a ordem 10, 6, 2, 4, 8).
(d) Tarefa mais curta primeiro.
Para (a), presuma que o sistema é multiprogramado e que cada tarefa recebe sua porção justa
de tempo na CPU. Para (b) até (d), presuma que apenas uma tarefa de cada vez é executada,
até terminar. Todas as tarefas são completamente limitadas pela CPU.
a) Tempo: 2
A-2 2 2 2 2
B- 2 2 2
C- 2
D- 2 2
E- 2 2 2 2
Tempo médio = 6
b) 4+2+10+8+6/5= 6
c)(10+6+2+4+8)/5 = 6
d) (5.2+4.4 + 3.6 + 2.8 + 10)/5 =10+16+18+16+10/5= 14