Linha ou Encadeamento de execução (em inglês: Thread), é 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ês: Kernel-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 utilizador 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.
Na ciência da computação, um thread de execução é a menor sequência de instruções programadas que podem ser gerenciadas independentemente por um agendador, que normalmente faz parte do sistema operacional.
A implementação de encadeamentos e processos difere entre sistemas operacionais, mas na maioria dos casos, um encadeamento é um componente de um processo. Vários threads podem existir em um processo, executando simultaneamente e compartilhando recursos, como memória, enquanto diferentes processos não compartilham esses recursos.
Em particular, os threads de um processo compartilham seu código executável e os valores de seus variáveis dinamicamente alocadas e variáveis globais não -thread-locais em um dado momento.
Na ciência da computação, um thread de execução é a menor sequência de instruções programadas que podem ser gerenciadas independentemente por um agendador, que normalmente faz parte do sistema operacional.
A implementação de encadeamentos e processos difere entre sistemas operacionais, mas na maioria dos casos, um encadeamento é um componente de um processo. Vários threads podem existir em um processo, executando simultaneamente e compartilhando recursos, como memória, enquanto diferentes processos não compartilham esses recursos.
Em particular, os threads de um processo compartilham seu código executável e os valores de seus variáveis dinamicamente alocadas e variáveis globais não -thread-locais em um dado momento.
Para escrever sua resposta aqui, entre ou crie uma conta.
Sistemas Operacionais I
•DAMAS
Compartilhar