Hybrid partitioning of virtualization on multiple core systems
AssigneeVMware, Inc.
InventorTiejun Chen
Life of this patent
Estimating the term…
Abstract
Disclosed are various approaches for the partitioning of virtualization on systems with multiple core processors. In one approach, hardware extensions for virtualizations are enabled on one or more first cores of a plurality of cores of the processor. The hardware extensions for virtualization are disabled on one or more second cores of the plurality of cores. A virtual machine instance is executed on the first cores having the hardware extensions for virtualization enabled. A real-time operating system is executed on the second cores having the hardware extensions for virtualization disabled.
Claims20
A system for virtualization partitioning, comprising:
- a computing device comprising a processor and a memory, the processor having a plurality of cores and hardware extensions for virtualization;
- and
- machine readable instructions stored in the memory that, when executed by the processor, cause the computing device to perform operations comprising:
- receiving, by a hypervisor, a request to launch one or more real-time operating systems;
- assigning, by the hypervisor and based on a determination that performance requirements of the one or more cannot be met through execution in a virtualized domain, a quantity of one or more first cores of the plurality of cores to execute in a native domain;
- assigning, by the hypervisor, a quantity of one or more second cores of the plurality of cores to execute in a virtualized domain;
- disabling, by the hypervisor, the hardware extensions for virtualizations on the one or more first cores assigned to the native domain;
- enabling, by the hypervisor the hardware extensions for virtualization on the one or more second cores assigned to the virtualized domain;
- executing, by the hypervisor, one or more virtual machine instances on the one or more second cores having the hardware extensions for virtualization enabled;
- executing the one or more real-time operating systems on the one or more first cores assigned to the native domain;
- managing, by the hypervisor, the one or more virtual machine on the one or more second cores in the virtualized domain;
- and
- avoiding, by the hypervisor, overhead on the one or more real-time operating systems by configuring the scheduler of the hypervisor not to use the one or more first cores in the virtualized domain.
A method for virtualization partitioning, comprising:
- receiving, by a hypervisor, a request to launch one or more real-time operating systems;
- assigning, by the hypervisor and based on a determination that performance requirements of the one or more cannot be met through execution in a virtualized domain, a quantity of one or more first cores of the plurality of cores to execute in a native domain;
- assigning, by the hypervisor, a quantity of one or more second cores of the plurality of cores to execute in a virtualized domain;
- disabling, by the hypervisor, the hardware extensions for virtualizations on the one or more first cores assigned to the native domain;
- enabling, by the hypervisor the hardware extensions for virtualization on the one or more second cores assigned to the virtualized domain;
- executing, by the hypervisor, one or more virtual machine instances on the one or more second cores having the hardware extensions for virtualization enabled;
- executing the one or more real-time operating systems on the one or more first cores assigned to the native domain;
- managing, by the hypervisor, the one or more virtual machine on the one or more second cores in the virtualized domain;
- and
- avoiding, by the hypervisor, overhead on the one or more real-time operating systems by configuring the scheduler of the hypervisor not to use the one or more first cores in the virtualized domain.
A non-transitory computer readable medium comprising machine readable instructions that, when executed by a processor of a computing device, cause the computing device to perform operations comprising:
- receiving, by a hypervisor, a request to launch one or more real-time operating systems;
- assigning, by the hypervisor and based on a determination that performance requirements of the one or more cannot be met through execution in a virtualized domain, a quantity of one or more first cores of the plurality of cores to execute in a native domain;
- assigning, by the hypervisor, a quantity of one or more second cores of the plurality of cores to execute in a virtualized domain;
- disabling, by the hypervisor, the hardware extensions for virtualizations on the one or more first cores assigned to the native domain;
- enabling, by the hypervisor the hardware extensions for virtualization on the one or more second cores assigned to the virtualized domain;
- executing, by the hypervisor, one or more virtual machine instances on the one or more second cores having the hardware extensions for virtualization enabled;
- executing the one or more real-time operating systems on the one or more first cores assigned to the native domain;
- managing, by the hypervisor, the one or more virtual machine on the one or more second cores in the virtualized domain;
- and
- avoiding, by the hypervisor, overhead on the one or more real-time operating systems by configuring the scheduler of the hypervisor not to use the one or more first cores in the virtualized domain.
Dependencies are inferred from the claim text.