Buscar

O que são as implementações híbridas de threads?

achei muito pouco sobre o assunto, preciso de ajuda :/

💡 2 Respostas

User badge image

pedro.cidon@hotmail.com Cidon

Linha ou Encadeamento de execução (em inglêsThread), é uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrencialmente. O suporte à thread é fornecido pelo próprio sistema operacional no caso da linha de execução ao nível do núcleo (em inglêsKernel-Level Thread (KLT)), ou implementada através de uma biblioteca de uma determinada linguagem, no caso de uma User-Level Thread (ULT). Uma thread permite, por exemplo, que o usuário de um programa utilize uma funcionalidade do ambiente enquanto outras linhas de execução realizam outros cálculos e operações.

Em hardwares equipados com uma única CPU, cada thread é processada de forma aparentemente simultânea, pois a mudança entre uma thread e outra é feita de forma tão rápida que para o utilizador, isso está acontecendo paralelamente. Em hardwares com múltiplos CPUs ou multi-cores, as threads são realizadas realmente de forma simultânea.

Os sistemas que suportam uma única thread (em real execução) são chamados de monothread enquanto que os sistemas que suportam múltiplas threads são chamados de multithread.

0
Dislike0
User badge image

RD Resoluções

Para implementar um pacote de threads , existem as duas maneiras a seguir.

Implementação de threads no espaço do usuário

Implementação de threads no kernel

Implementação de Threads no Espaço do Usuário

Neste modelo de implementação do pacote de threads completamente no espaço do usuário, o kernel não sabe nada sobre eles. A vantagem de implementar o pacote de encadeamentos no espaço do usuário é que um pacote de encadeamentos no nível do usuário pode ser implementado em um SO (sistema operacional) que não suporta encadeamentos.

Implementação de Threads no Kernel

Neste, não há nenhuma tabela de threads em cada processo. Mas para manter o controle de todos os encadeamentos no sistema, o kernel possui a tabela de encadeamentos. Sempre que um encadeamento deseja criar um novo encadeamento ou destruir um encadeamento existente, ele faz uma chamada do kernel, que cria ou destrói apenas atualizando a tabela de encadeamentos do kernel.

A tabela de threads do kernel contém cada registro, estado e algumas outras informações úteis do encadeamento. Aqui, as informações são as mesmas que as dos threads no nível do usuário. Esta informação é um subconjunto das informações que os kernels tradicionais mantêm sobre cada um dos seus processos single-threaded, isto é, o estado do processo.

0
Dislike0

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

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais