Qual a diferença entre processos e threads?
Por: Rafael Oliveira • 8/4/2021 • Exam • 842 Palavras (4 Páginas) • 1.803 Visualizações
LISTA DE EXERCÍCIOS 03
1. Qual a diferença entre processos e threads?
R:Os processos e os encadeamentos são sequências independentes de execução. A diferença típica é que os threads (do mesmo processo) são executados em um espaço de memória compartilhado, enquanto os processos são executados em espaços de memória separados.
Threads são um recurso do ambiente operacional, em vez de um recurso da CPU (embora a CPU normalmente possua operações que tornam os threads eficientes).
2. Cite três exemplos de operações que fazem um processo transitar do estado “em execução” para o estado “bloqueado”.
R:Cópias de um programa; Instaladores; Emuladores
3. Descreva uma aplicação que utilize múltiplas threads para o seu funcionamento. Como seria o funcionamento desta aplicação se ela fosse implementada em uma única thread?
R:Um programa de converrter musicas em mp3, onde poderia converter varias musicas ao mesmo tempo.
Se nao utilizasse multiplas threads, o processador teria q esperar uma musica ser convertida para poder converter a outra.
4. Qual a maior vantagem de implementar threads no espaço do usuário? Qual a maior desvantagem?
R:A maior vantagem é que o programador controla o escalonamento, ou seja, ele fica encarregado de distribuir tudo. Os threads possuem vantagens e desvantagens ao dividir um programa em vários processos. Uma das vantagens é que isso facilita o desenvolvimento
5. Qual a maior vantagem de implementar threads no espaço do núcleo do sistema operacional? Qual a maior desvantagem?
R:é uma forma de processo que executa varias tarefas, exemplo: você está usando o navegador ele está executando em uma thread em quanto você escuta música com o spotify que está executando em outra thread. Ou seja a thread permite usar varios processo simultâneo
6. O que é um middleware ?
R: O middleware é uma ferramenta de integração entre duas camadas de software distintos. A ideia é simplificar a integração abstraindo alguns aspectos do software de uma camada para o software da outra camada.
7. Liste 5 (cinco) serviços, oferecidos por um sistema operacional, que são projetados para tornar o sistema de computação mais conveniente para os usuários.
R: Sistema de ficheiros; Gerência de processos; Interrupção de hardware; Rede de computadores (TCP/IP, UDP); Segurança (proteção de memória e de processos)
8. O que são System Calls, cite 4 exemplos.
R: CreateProcess ; ExitProcess ; CreateFile ; ReadFile
9. Os sistemas operacionais podem ser construídos de diferentes maneiras. Descrevaas principais arquiteturas existentes.
R: Caso seja arquitetura de processadores seriam os x86 e o x64, nomeados como 32bits e 64bits respectivamente.
Atualmente os processadores quanticos estão na fase de 128 qubits
10. Descreva as ações tomadas pelo kernel para fazer a troca de contexto entre processos.
R: Em geral, o SO precisa salvar o estado do processo correntemente em execução e restaurar o estado do processo escalonado para ser executado em seguida. Salvar o estado de um processo normalmente inclui os valores de todos os registradores da CPU, além da alocação de memória. As trocas de contexto também precisam realizar muitas operações específicas da plataforma, incluindo o esvaziamento de caches de dados e instruções.
...