Em um PC Windows com vários núcleos, por que um único processo usa apenas todos os núcleos ocasionalmente?

0

Durante anos, tive a impressão de que um único processo só pode usar no máximo um núcleo da CPU, mas recentemente encontrei dois exemplos em que um único processo usava todos os núcleos de um sistema Windows com vários núcleos.

Um deles é fácil de testar para a maioria das pessoas: link

Desabilitando a função multiprocessos do seu navegador, a configuração "Encadeamentos da CPU" na página da Web ainda é efetiva. Você pode ver o processo de navegador único usando todos os seus núcleos de CPU.

Por que isso acontece apenas algumas vezes enquanto a maior parte do tempo não acontece (tantos programas geram vários processos para tentar aproveitar o sistema multiprocessador)?

    
por hocunofu 24.07.2018 / 09:48

1 resposta

1

Um programa pode ser escrito para fazer uso de vários threads, permitindo que eles usem mais de um núcleo.

Um programa também pode ser escrito para dividir-se em processos distintos , cada um com um ou mais threads para funcionar.

Existe uma diferença muito sutil, mas real, entre o multi-thread e o multi-processo. Desativar a funcionalidade multiprocessos não desabilita o multi-threading, que já estava presente.

As atualizações recentes do navegador para permitir a funcionalidade de vários processos aumentam a segurança e a tolerância a falhas, separando os segmentos para páginas separadas em seus próprios processos, cada um desses processos ainda pode ter vários segmentos, todos trabalhando independentemente.

    
por 24.07.2018 / 10:00