Sou bastante novo no campo e no Stack Exchange, mas vou tentar fazer com que essa questão não seja lixo. Isso realmente tem me incomodado recentemente, porque estou tentando configurar algo em um VPS e
A questão é, em resumo: um processo single-threaded em execução em uma máquina virtual com múltiplos núcleos virtuais utiliza a capacidade total da máquina física, se essa máquina tiver apenas um único núcleo?
Se isso não ficou claro, tentarei fazer a pergunta com mais detalhes e detalhes abaixo:
Suponha que eu execute um processo de um único recurso, com uso intensivo de recursos, em uma máquina virtual. Essa máquina virtual tem vários núcleos virtuais, mas como o processo tem apenas um único encadeamento, apenas um núcleo pode executá-lo. No entanto, a máquina virtual é executada em uma máquina física com apenas um núcleo.
Normalmente, quando você tem vários núcleos, mas um único segmento, apenas um núcleo será utilizado e o restante ficará inativo, certo? Eu sou de duas mentes sobre o mesmo em uma máquina virtual, mas não consigo encontrar qualquer informação sobre esse caso. Quero dizer, é um segmento único em vários núcleos para a VM, com certeza, mas no final, a máquina física tem apenas um único núcleo também. Os outros núcleos virtuais serão apenas inativos, desperdiçando os ciclos de CPU da máquina física?
O hipervisor será capaz de atender toda a capacidade do núcleo físico para o processo single-threaded? Pode apenas alguns hipervisores fazer isso, ou é uma habilidade comum / rara para um hipervisor ser capaz de fazer isso?
Eu sei que é um mau hábito fazer várias perguntas ao mesmo tempo, mas eu sinto que essas perguntas são tão relacionadas que podem ser feitas de uma vez.