o que significa multiprocessamento e como funciona? [fechadas]

0

qual é a diferença entre núcleos, CPU, threads e processador no sistema linux? por favor explique a diferença

    
por Raj Aah 17.07.2013 / 08:12

2 respostas

2

Um núcleo é uma CPU é um processador. As máquinas podem ser single-core (uma CPU) ou multi-core (mais de uma CPU). Um processador é outro nome para uma CPU.

Como geralmente há muitos processos sendo executados em um computador - todos exigindo recursos da CPU - o computador deve programar como as tarefas concorrentes são processadas. Em uma máquina de processador único (single core), o agendamento é realizado alocando pequenos intervalos de tempo para cada processo. O desempenho da máquina e o curto espaço de tempo (milissegundos) que cada processo está executando faz parecer ao usuário que os processos são executados simultaneamente.

A distinção entre um thread e um processo pode variar dependendo do sistema operacional - essa resposta tenta apenas uma explicação básica. Geralmente, um processo pode conter muitos segmentos. O sistema operacional pode agendar cada um dos segmentos separadamente. Cada um dos encadeamentos do processo compartilha o código do processo (cada encadeamento possui seu próprio registro de instrução) e também compartilha os dados do processo. Cada thread, no entanto, tem seu próprio segmento de pilha. A pilha de chamadas mantém o controle do ponto de retorno após uma chamada de função.

Uma máquina multi-core (com duas ou mais CPUs) não só agendará processos por meio de timeslicing. Também pode executar um thread separado por núcleo. Threads em execução em núcleos separados são (ao contrário de uma máquina de núcleo único que dá a impressão de simultaneidade com fatiamento de tempo) verdadeiramente simultânea.

O multi-threading oferece melhor desempenho no processamento de computadores. Há alguns anos, as melhorias contínuas no desempenho da CPU diminuíram (a Lei de Moore deixou de ser aplicada) e, desde então, a tecnologia de desempenho da CPU tem dirigido por tecnologias multi-core e multi-threading.

    
por 17.07.2013 / 09:31
1
  • Um processador é um chip físico que você conecta a um soquete. Os primeiros processadores eram compostos principalmente por uma CPU. Mais tarde, MMU (gerenciamento de memória virtual), FPU (ponto flutuante), caches e, às vezes, GPU (Graphic) foram adicionados aos processadores.

  • Um núcleo é uma CPU. Um processador pode ter um ou mais núcleos. Uma CPU de dois núcleos equivale aproximadamente a dois processadores de núcleo único, embora os componentes compartilhados possam reduzir o ganho se um componente for um gargalo ou pelo contrário e mais comumente melhorar o desempenho devido a uma comunicação interna mais rápida entre os núcleos.

  • Um núcleo pode suportar mais de um thread de hardware, ou seja, permite que vários contextos de execuções (principalmente registradores) sejam tratados simultaneamente. Isso melhora o desempenho também, apesar do fato de todos os threads compartilharem o mesmo CPU. O ganho é devido à troca de contexto mais rápida e à execução próxima do concorrente devido à latência de acesso à memória.

por 17.07.2013 / 11:44