Escolar Documentos
Profissional Documentos
Cultura Documentos
Atividade 4 - 05/03/21
Samuel de Castro Ribeiro 0032743
Isso ocorre porque cada thread necessita de sua própria área de registro.
Quando um thread é interrompido, ele salva seus valores nos registradores
assim como quando um processo é interrompido.
Há uma pilha por thread quando threads de usuário são usados. Isso ocorre já
que cada um deles chama rotinas diferentes e, portanto, tem um modo história
de execução diferente. Assim, necessitam que a pilha armazene as variáveis
locais e endereços de retorno para usar quando a chamada de rotina for
encerrada. O mesmo ocorre para threads no nível do kernel.
2.2) ATIVIDADE: Faça os exercícios nº 4.2, 4.4, 4.7, 4.8 do livro-texto do autor
SILBERSCHATZ (9ª ed., pág. 191-192 do cap. 4).
4.2 Cite duas diferenças entre threads de nível de usuário e threads de nível
de kernel. Sob que circunstâncias um tipo é melhor do que o outro?
O thread de usuário pode ser implementado por um sistema operacional que não
tenha suporte a abstração de threads, enquanto o thread de kernel não. Já o
thread de kernel é ideal para eventos assíncronos.
4.4 Que recursos são usados quando um thread é criado? Em que eles
diferem daqueles usados quando um processo é criado?
4.7 Sob que circunstâncias uma solução com múltiplos threads, usando
múltiplos threads de kernel, fornece melhor desempenho do que uma
solução com um único thread em um sistema com apenas um
processador?