Os dois núcleos de um processador dual core são usados quando a CPU está no modo de tarefa única?

0

Um sistema operacional em execução no modo de tarefa única (não no modo multitarefa) tira vantagem de ambos os núcleos em um processador dual core?

EDIT: Em resposta ao primeiro comentário: Sim, mas quando o computador inicia, há apenas uma tarefa em execução; o bootloader. A minha pergunta é: nesse momento, os dois núcleos estão executando a mesma tarefa ou ambos podem ser usados apenas no modo multitarefa.

    
por Isaac D. Cohen 19.01.2015 / 21:56

1 resposta

2

Se você está falando sobre a plataforma PC padrão x86 / amd64, o seguinte acontece em um nível de hardware quando o sistema é ligado (de aqui ):

In a multicore system, the bootstrap processor is the CPU core (or thread) that is chosen to boot the system firmware, which is normally single-threaded.

At RESET, all of the processors race for a semaphore flag bit in the chipset The first finds it clear and in the process of reading it sets the flag; the other processors find the flag set and enter a wait-for-SIPI (Start-up Inter-Processor Interrupt) or halt state.

The first processor initializes main memory and the Application Processors (APs), then continues with the rest of the boot process. (http://www.drdobbs.com/go-parallel/article/print?articleId=232300699)

Assim, todos os processadores, exceto o que "ganhou" a corrida acima, estarão suspensos, aguardando o SIPI. Se o "Bootstrap Processor" nunca emite um SIPI para as outras CPUs (leia isso ), esse é o estado em que eles ficarão (por exemplo, se você inicializar o DOS, que não sabe nada sobre vários núcleos, ou o APIC, ou SIPIs).

Então, para responder sua pergunta, os outros núcleos ficarão ociosos.

    
por 19.01.2015 / 22:40

Tags