Flashcard FC213989
O que é uma thread e por que ela atende à comunicação eficiente, criação/destruição eficiente e ao compartilhamento de espaço de endereçamento?
Conceitos, Funções e Tipos de Sistemas Operacionais
CESGRANRIO · 2024
O que é uma thread e por que ela atende à comunicação eficiente, criação/destruição eficiente e ao compartilhamento de espaço de endereçamento?
Mostrar resposta e comentário
Resposta
Thread — unidade de execução dentro de um processo que compartilha o mesmo espaço de endereçamento e dados, possui pilha própria e registradores, e é mais barata de criar/encerrar, permitindo comunicação rápida via memória compartilhada.
Explicação:
A thread executa código dentro do mesmo processo, portanto compartilha heap e variáveis globais, o que viabiliza comunicação eficiente sem mecanismos de IPC pesados.
Cada thread tem sua própria pilha e registradores, mas a criação e destruição de threads exigem menos recursos do sistema do que processos completos, garantindo criação/destruição eficiente.
O compartilhamento do mesmo espaço de endereçamento torna possível o compartilhamento de dados diretamente entre threads, atendendo ao requisito de compartilhar endereço e dados.
Exemplo:
Num servidor web multithreaded, o processo principal mantém uma cache compartilhada de páginas em memória.
Cada requisição é atendida por uma thread que acessa diretamente essa cache (comunicação rápida), realiza o processamento no seu próprio contexto de pilha e encerra-se quando a resposta é enviada (criação/destruição rápida), sem criar novos processos para cada conexão.
Explicação:
A thread executa código dentro do mesmo processo, portanto compartilha heap e variáveis globais, o que viabiliza comunicação eficiente sem mecanismos de IPC pesados.
Cada thread tem sua própria pilha e registradores, mas a criação e destruição de threads exigem menos recursos do sistema do que processos completos, garantindo criação/destruição eficiente.
O compartilhamento do mesmo espaço de endereçamento torna possível o compartilhamento de dados diretamente entre threads, atendendo ao requisito de compartilhar endereço e dados.
Exemplo:
Num servidor web multithreaded, o processo principal mantém uma cache compartilhada de páginas em memória.
Cada requisição é atendida por uma thread que acessa diretamente essa cache (comunicação rápida), realiza o processamento no seu próprio contexto de pilha e encerra-se quando a resposta é enviada (criação/destruição rápida), sem criar novos processos para cada conexão.
Veja como foi cobrado:
https://flashcardsconcursos.com.br/portal/flashcard/213583
Conteúdo do catálogo FC Concursos · Atualizado em