Buscar

Respostas Tanenbaum Sistemas Operacionais modernos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1. Na figura, vemos um controlador com dois 
dispositivos. A razão que um único controlador 
espera-se que lidar com múltiplos dispositivos é o de 
eliminar a necessidade de ter um controlador por 
dispositivo. Se os controladores de tornar-se quase de 
graça, então ele vai ser mais simples apenas para 
construir o controlador no próprio dispositivo. Este 
projeto também permitirá múltiplas transferências 
em paralelo e, assim, dar um melhor desempenho. 
 
 
2. Fácil. O scanner põe para fora 400 KB/seg máximo. 
A rede sem fio é executada a 6,75 M/s, por isso não 
há problema. 
 
 
3. Não é uma boa ideia. O barramento de memória é 
certamente mais rápido do que o barramento E/S, 
caso contrário, por que se preocupar com isso? 
Considere o que acontece com um pedido de 
memória normal. O barramento de memória termina 
primeiro, mas o barramento de E/S ainda está 
ocupado. Se a CPU espera até que a E/S acabamentos 
de ônibus, reduziu o desempenho da memória ao do 
E/S barramento. Se ele apenas tenta o barramento de 
memória para a segunda referência, ele irá falhar se 
esta é uma referência do dispositivo de E / S. Se 
houvesse alguma maneira de abortar 
instantaneamente o I / O ônibus referência anterior 
para tentar o segundo, a melhoria pode funcionar, 
mas nunca há essa opção. Tudo somado, é uma má 
ideia. 
 
 
4. (a) O modo palavra-a-um-tempo: 1000 X [(t1 + t2) 
+ (t1 + t2) + (t1 + t2)] Quando o primeiro termo é para 
a aquisição de ônibus e enviar o comando para o 
controlador de disco , o segundo termo é 
fortransferring a palavra, e o terceiro termo é para o 
reconhecimento. Ao todo, um total de 3000 × (t1 + t2) 
ns. 
(b) Modo Burst: (t1 + t2) + t1 + 1000 vezes t2 + (t1 + 
t2), onde o primeiro termo é para a aquisição de 
ônibus e enviar o comando para o controlador de 
disco, o segundo termo é para o controlador de disco 
para adquirir o ônibus, o terceiro mandato é para a 
transferência de explosão, e o quarto termo é para a 
aquisição de ônibus e fazer o reconhecimento. Ao 
todo, um total de 3t1+1002t2. 
 
 
5. Uma interrupção requer empurrando 34 palavras 
na pilha. Voltando da interrupção requer buscar 34 
palavras a partir da pilha. Esta sobrecarga só é de 680 
ns. Assim, o número máximo de interrupções por 
segundo não é mais do que cerca de 1.470.000, 
assumindo que nenhum trabalho para cada 
interrupção. 
 
 
6. A taxa de execução de um processador moderno é 
determinada pelo número de instruções que 
terminam por segundo e tem pouco a ver com a 
duração de uma instrução leva. Se uma CPU pode 
terminar 1 bilhão de instruções / sec é uma máquina 
de 1.000 MIPS, mesmo que uma instrução leva 
30nsec. Assim, não há geralmente pouco tentativa de 
fazer instruções terminar rapidamente. Segurando a 
interrupção até que a última instrução atualmente 
em execução acabamentos pode aumentar a latência 
de interrupções sensivelmente. Além disso, alguma 
administração é necessária para obter este direito. 
 
 
7. Ele poderia ter sido feito no início. A razão para 
fazer isso no final é que o código do procedimento de 
interrupção do serviço é muito curto. Por outro 
personagem primeira saída e, em seguida, 
reconhecer a interrupção, se outra interrupção 
acontece imediatamente, a impressora estará 
trabalhando durante a interrupção, tornando-se 
imprimir um pouco mais rápido. A desvantagem dessa 
abordagem é um pouco mais de tempo morto quando 
outras interrupções podem ser desativadas. 
 
 
8. Sim. Os pontos de PC empilhados para a primeira 
instrução não foi buscar. Todas as instruções antes 
que tenham sido executados e a instrução apontada 
e seus sucessores não foram executados. Esta é a 
condição para interrupções precisas. Interrupções 
precisas não são difíceis de alcançar em uma máquina 
com um único pipeline. O problema surge quando as 
instruções são executadas fora de ordem, o que não 
é o caso aqui. 
 
 
9. A impressora imprime 50 × 80 × 6 = 24000 
caracteres / min, que é de 400 caracteres / seg. Cada 
caractere usa 50μsec de tempo de CPU para a 
interrupção, de forma coletiva, em cada segundo a 
sobrecarga de interrupção é de 20 ms. Usando 
interrupção impulsionado I / O, os restantes 980 ms 
de tempo disponível para outros trabalhos. Em outras 
palavras, os custos gerais de interrupção apenas 2% 
da CPU, o que dificilmente vai afetar o programa em 
execução em tudo. 
 
 
10. UNIX faz isso da seguinte forma. Existe uma tabela 
indexada pelo número do dispositivo, com cada 
entrada da tabela de ser um struct C contendo 
ponteiros para as funções de abertura, fechamento, 
leitura e escrita e algumas outras coisas a partir do 
dispositivo. Para instalar um novo dispositivo, uma 
nova entrada tem que ser feita nesta tabela e os 
ponteiros preenchida, muitas vezes para o driver de 
dispositivo recém-carregado. 
 
 
11. (a) driver de dispositivo. 
(b) driver do dispositivo. 
(c) software independente de dispositivo. 
(d) software em nível de usuário. 
 
 
12. Um pacote deve ser copiado quatro vezes durante 
este processo, o que leva 4,1 mseg. Há também duas 
interrupções, que respondem por 2mseg. Finalmente, 
o tempo de transmissão é de 0,83 milissegundos, para 
um total de 6,93 ms por 1024 bytes. A taxa de dados 
máxima é, portanto, 147.763 bytes / seg, ou cerca de 
12% da capacidade nominal da rede 10 megabits / 
seg. (Se incluirmos sobrecarga de protocolo, os 
números ficam ainda piores.) 
 
 
13. Se a impressora foi atribuída, logo que a saída 
apareceu, um processo poderia amarrar a impressora 
imprimindo alguns caracteres e depois ir dormir por 
uma semana. 
 
 
14. RAID nível 2 não só pode recuperar a partir de 
unidades caiu, mas também de erros transitórios 
detectados. Se uma unidade fornece um único bit 
estragado, RAID nível 2 vai corrigir isso, mas o nível de 
RAID 3 não. 
 
 
15. A probabilidade de 0 falhas, P0, é (1−p)^k. A 
probabilidade de uma falha, P1, é kp(1−p)^k−1.A 
probabilidade de uma falha RAID é, em seguida, 1-P0-
P1. Esta é a 1−(1−p)^k−kp(1−p)^k−1. 
 
 
16. Desempenho de leitura: os níveis de RAID 0, 2, 3, 
4 e 5 permitem leituras paralelas para atender uma 
solicitação de leitura. No entanto, o nível de RAID 1 
permite ainda dois pedidos de leitura para avançar 
simultaneamente. Desempenho de escrita: Todos os 
níveis de RAID fornecem desempenho de gravação 
similar. Spaceover cabeça:. Não há cabeça spaceover 
no nível 0 e 100% de sobrecarga no nível 1 com a 
palavra de dados de 32 bits e seis unidades de 
paridade, o chefe spaceover é de cerca de 18,75% no 
nível 2 para uma palavra de dados de 32 bits, o 
arquivo. sobrecarga de espaço no nível 3 é de cerca 
de 3,13%. Finalmente, assumindo que 33 unidades 
nos níveis 4 e 5, a cabeça spaceover é de 3,13% nos 
mesmos. Confiabilidade: Não há suporte 
confiabilidade em nível 0 Todos os outros níveis de 
RAID podem sobreviver a uma falha de disco. Além 
disso, nos níveis de 3, 4 e 5, um erro de bit único 
aleatório de uma palavra pode ser detectado, 
enquanto que no nível 2, um erro de bit único 
aleatório de uma palavra pode ser detectada e 
corrigida. 
 
 
17. Um campo magnético é gerado entre dois pólos. 
Não só é difícil fazer com que a fonte de um campo 
magnético pequeno, mas também no campo espalha-
se rapidamente, o que leva a problemas mecânicos a 
tentar manter a superfície de um meio magnético 
próximo de uma fonte magnética ou um sensor. Um 
laser semicondutor gera luz em um lugar muito 
pequeno, e a luz pode ser opticamente manipulado 
para iluminar um ponto muito pequeno em uma 
distância relativamente grande a partir da fonte. 
 
 
18. A principal vantagem de discos ópticos é que elas 
têm densidades de gravação muito mais elevados do 
que os discos magnéticos. A principal vantagem de 
discos magnéticos é que eles são uma ordem de 
grandeza mais rápida do queos discos ópticos. 
 
 
19. Possivelmente. Se a maioria dos arquivos são 
armazenados em setores logicamente consecutivas, 
pode valer a pena intercalando os setores para dar 
programas de tempo para processar os dados 
recebidos apenas, de modo que quando o próximo 
pedido for emitido, o disco estaria no lugar certo. Se 
isso vale a pena depende fortemente do tipo de 
programas são executados e como seu 
comportamento é uniforme. 
 
 
20. Talvez sim e talvez não. Entrelaçamento duplo é 
efetivamente uma inclinação cilindro de dois setores. 
Se o chefe pode fazer uma busca pista para a via em 
menos de duas vezes do setor, que não é necessária 
nenhuma inclinação cilindro adicional. Se ele não 
pode, em seguida, é necessária a inclinação cilindro 
adicional para evitar a falta de um setor depois de 
uma procura. 
 
 
21. (a) A capacidade de uma zona é faixas × × cilindros 
setores / cilindro × bytes / sect. Capacidade da zona 
1: 16 × 100 × 160 × 512 = 131.072.000 bytes 
Capacidade da zona 2: 16 × 100 × 200 × 512 = 
163.840.000 bytes 
Capacidade da zona 3: 16 × 100 × 240 × 512 = 
196.608.000 bytes 
Capacidade de zona 4: 16 × 100 × 280 × 512 = 
229.376.000 bytes 
Soma = 131072000 + 163840000 + 196608000 + 
229376000 = 720896000 
 
(b) A taxa de rotação 7200 significa que há 120 
rotações / seg. Nos 1 mseg faixa-a-faixa de tempo de 
busca, 0.120 dos setores são cobertos. Na zona 1, o 
cabeça do disco passarão 0.120 × 160 setores em 1 
ms, e assim, o controle ideal inclinação para a zona 1 
é 19,2 setores. Na zona 2, a cabeça do disco 
passaremos 0.120 × 200 setores em 1 ms, e assim, a 
inclinação pista ideal para a zona 2 é de 24 setores. Na 
zona 3, a cabeça do disco vai passar mais de 0.120 × 
240 setores em 1 ms, assim, a inclinação pista ideal 
para a zona 3 é 28,8 setores. Na zona 4, a cabeça do 
disco vai passar mais de 0.120 × 280 setores em 1 ms, 
e assim, a inclinação pista ideal para zona 3 é de 33,6 
sectores. 
 
(c) A taxa máxima de transferência de dados será 
quando os cilindros na zona mais externa (zona 4) 
estão sendo lidos / escritos. Nessa zona, em um 
segundo, 280 setores são lidos 120 vezes. Assim, a 
taxa de dados é de 280 × 120 × 512 = 17.203.200 bytes 
/ seg. 
 
 
22. A capacidade da unidade e as taxas de 
transferência são dobrados. O tempo de busca e 
atraso rotacional média são os mesmos. 
 
 
23. Uma consequência bastante óbvia é que nenhum 
sistema operacional existente vai funcionar porque 
todos olham lá para ver onde as partições do disco 
são. Alterar o formato da tabela de partição fará com 
que todos os sistemas operacionais a falhar. A única 
maneira de mudar a tabela de partições é mudar 
simultaneamente todos os sistemas operacionais 
para usar o novo formato. 
 
 
24. (a) 10 + 12 + 2 + 18 + 38 + 34 + 32 = 146 cilindros 
= 876 ms. 
(b) 0 + 2 + 12 + 4 + 4 + 36 +2 = 60 cilindros = 360 ms. 
(c) 0 + 2 + 16 + 2 + 30 + 4 + 4 = 58 cilindros = 348 ms. 
 
 
25. No pior dos casos, um pedido de leitura/escrita 
não é servido por quase dois scans de disco completo 
no algoritmo do elevador, enquanto ele estiver no 
máximo, um exame completo do disco no algoritmo 
modificado. 
 
 
26. Há uma corrida, mas isso não importa. Desde a 
própria gravação estável já foi concluída, o fato de 
que a RAM não volátil não foi atualizada apenas 
significa que o programa de recuperação vai saber 
qual bloco estava sendo escrito. Ele vai ler ambas as 
cópias. Encontrá-los idênticos, ele vai mudar nenhum 
dos dois, que é a ação correta. O efeito do acidente 
pouco antes da RAM não volátil foi atualizado apenas 
significa que o programa de recuperação terá que 
fazer duas leituras mais do que deveria. 
 
 
27. Sim, o disco permanece consistente, mesmo se a 
CPU cai durante um procedimento de recuperação. 
Considere fig. 5-31. Não há recuperação envolvidos 
em (a) ou (e). Suponha-se que a falha de CPU durante 
a recuperação, em (b). Se CPU trava antes do bloco da 
unidade 2 foi totalmente copiada para conduzir 1, a 
situação mantém-se mesmo que antes. O 
procedimento de recuperação subsequente irá 
detectar um erro ECC na unidade 1 e mais uma vez 
copiar o bloco da unidade 2 para conduzir 1. Se 
crashes CPU após a quadra da unidade 2 foi copiado 
para conduzir 1, a situação é a mesma que no caso (e). 
Suponha-se que a falha de CPU durante a 
recuperação, em (c). Se CPU trava antes do bloco da 
unidade 1 foi totalmente copiada para a unidade 2, a 
situação é a mesma que no caso (d). O procedimento 
de recuperação subsequente irá detectar um erro ECC 
na unidade 2 e copie o bloco da unidade 1 para 
conduzir 2. Se crashes CPU após a quadra da unidade 
1 foi copiado para a unidade 2, a situação é a mesma 
que no caso (e). Finalmente, suponha que as falhas de 
CPU durante a recuperação em (d). Se CPU trava 
antes do bloco da unidade 1 foi totalmente copiada 
para a unidade 2, a situação continua igual à anterior. 
O procedimento de recuperação subsequente irá 
detectar um erro ECC na unidade 2 e novamente 
copiar o bloco da unidade 1 para conduzir 2. Se 
crashes CPU após a quadra da unidade 1 foi copiado 
para a unidade 2, a situação é a mesma que no caso 
(e). 
 
 
28. Dois mseg 60 vezes por segundo é de 120 ms/seg, 
ou 12% da CPU 
 
 
29. (a) Utilizando um cristal de 500 MHz, o contador 
pode ser decrementado a cada 2 nseg. Assim, por um 
carrapato cada milissegundo, o registo deve ser 
1000000/2 = 500.000. 
(b) Para obter um relógio assinalar a cada 100 ms, 
mantendo valor do registrador deve ser 50.000. 
 
 
30. No momento de 5000: 
Tempo atual = 5000; Próximo Sinal = 8; Cabeçalho → 
8 → 4 → 3 → 14 → 8. 
No momento 5005: 
Tempo atual = 5005; Em seguida sinal = 3; Cabeçalho 
→ 3 → 4 → 3 → 14 → 8. 
No momento 5013: 
Tempo atual = 5013; Próximo Sinal = 2; Cabeçalho 2 
→ 14 → 8. 
No momento 5023: 
Tempo atual = 5023; Em seguida sinal = 6; Cabeçalho 
→ 6 → 4 → 5. 
 
 
31. O número de segundos em um ano médio é de 
365,25 × 24 × 3600. Este número é 31557600. O 
contador envolve após 2^32 segundos a partir do 01 
de janeiro de 1970. O valor de 2^32/31557600 é 136,1 
anos, então embrulho que acontecerá em 2106,1, 
que é cedo fevereiro 2106. É claro que, até então, 
todos os computadores serão de pelo menos 64 bits, 
por isso não vai acontecer. 
 
 
32. Rolar a janela requer copiando 59 linhas de 80 
caracteres ou 4720 caracteres. Copiando um 
caractere (16 bytes) leva 800 nano segundos, então 
toda a janela tem 3,776 ms. Escrevendo 80 caracteres 
para a tela leva 400 nano segundos, de modo a 
rolagem e exibindo uma nova linha de tomar 4,176 
ms. Isso dá cerca de 239,5 linhas / seg. 
 
 
33. Suponha que o usuário, inadvertidamente, pediu 
ao editor para imprimir milhares de linhas. Em 
seguida, ele bate DEL para pará-lo. Se o motorista não 
descartar saída, a saída pode continuar por vários 
segundos após o DEL, o que tornaria o hit usuário DEL 
novamente e novamente e ficar frustrado quando 
nada aconteceu. 
 
 
34. As 25 linhas de caracteres, cada 8 pixels de altura, 
requer 200 scans para desenhar. 
Há 60 telas por segundo, ou 12.000 leituras / seg. No 
63,6 ms / digitalização, a feixe está se movendo 
horizontalmente 763 milissegundos por segundo, 
deixando 237 milissegundos para escrever no vídeo 
RAM. Assim, a memória RAM de vídeo está disponível 
de 23,7% do tempo. 
 
 
 
35. A taxa máxima do rato pode mover é de 200 mm 
/ s, o que é de 2000 mickeys / seg. Se cada relatório é 
de 3 bytes, a taxa de produção é de 6000 bytes / seg.

Continue navegando