Managing signals from multiple virtual machines and controlling hardware directly or through an API by a host operating system
AssigneeOpen Invention Network, LLC
InventorsWing-Yee Au, Alan Rowe, Sameer Narkhede
Life of this patent
Estimating the term…
Abstract
A system according to an embodiment of the present invention includes at least two virtual machines running on a hardware platform using either a hosted or a bare metal hypervisor. The virtual machines may communicate with an agent-server resident in the host operating system or in one of the virtual machines to switch control of the hardware component, such as graphics hardware, from one virtual machine to another.
Claims19
A system, comprising:
- a processing unit;
- a memory coupled to the processing unit and encoded to store a first and a second virtual machine;
- a hardware component coupled to the processing unit;
- a host operating system implemented by the processing unit and configured to control the hardware component either directly or through use of an application programming interface (API);
- the first virtual machine including computer readable instructions that when executed cause the processing unit to run a first operating system instance and to generate first electronic signals sent to the hardware component in accordance with the first operating system instance;
- the second virtual machine including computer readable instructions that when executed cause the processing unit to run a second operating system instance and to generate second electronics signals sent to the hardware component in accordance with the second operating system instance;
- a hypervisor communicatively coupled with the first and second virtual machines and the memory via a first communication path, and including computer readable instructions encoded on the memory that when executed cause the processing unit to reformulate the first electronic signals into reformulated first electronic signals with a format that is compatible with the host operating system instance that allows the host operating system to control the hardware component directly using the reformulated first electronic signals;
- and
- an agent-server in the host operating system comprising computer readable instructions that when executed cause the processing unit to receive a selection of the first virtual machine which causes the processing unit to direct the reformulated first electronic signals from the memory and causes the host operating system to use the reformulated first electronic signals to directly control the hardware component, and a selection from the second virtual machine which causes the processing unit to direct the second electronic signals from the memory and causes the host operating system to use the second electronic signals to control the hardware component through the API;
- wherein at least one of the first operating system instance and the second operating system instance control the hardware component and wherein the agent-server may provide a communication path independent of the hypervisor.
A computer program product comprising computer readable instructions encoded on a non-transitory computer readable medium, wherein the computer readable instructions when executed cause a processor unit to perform:
- generating first electronic signals sent to a hardware component in accordance with a first operating system instance in a first virtual machine;
- generating second electronic signals sent to the hardware component in accordance with a second operating system instance in a second virtual machine;
- running a host operating system implemented by a processing unit that controls the hardware component either directly or through use of an application programming interface (API);
- running a hypervisor configured to receive the first and second electronic signals from the respective first and second virtual machines via a first communication path, to reformulate the first electronic signals generated by the first virtual machine into reformulated first electronic signals with a format that is compatible with the host operating system instance that allows the host operating system to control the hardware component directly using the reformulated first electronic signals;
- receiving an indication indicating a first selection of the first virtual machine via a second communication path independent of the hypervisor;
- controlling the hardware component responsive to the first indication received via the second communication path by directing the reformulated first electronic signals and causing the host operating system to use the reformulated first electronic signals to directly control the hardware component;
- receiving another indication indicating a second selection of the second virtual machine via the second communication path;
- and
- controlling the hardware component responsive to the second indication received via the second communication path by directing the second electronic signals and causing the host operating system to use the second electronic signals to control the hardware component through the API;
- wherein at least one of the first operating system instance and the second operating system instance control the hardware component and wherein the agent-server may provide a communication path independent of the hypervisor.
A method, comprising:
- generating first electronic signals sent to a hardware component in accordance with a first operating system instance in a first virtual machine;
- generating second electronic signals sent to the hardware component in accordance with a second operating system instance in a second virtual machine;
- running a host operating system implemented by a processing unit that controls the hardware component either directly or through use of an application programming interface (API);
- running a hypervisor configured to receive the first and second electronic signals from the respective first and second virtual machines via a first communication path, to reformulate the first electronic signals generated by the first virtual machine into reformulated first electronic signals with a format that is compatible with the host operating system instance that allows the host operating system to control the hardware component directly using the reformulated first electronic signals;
- receiving an indication indicating a first selection of the first virtual machine via a second communication path independent of the hypervisor;
- controlling the hardware component responsive to the first indication received via the second communication path by directing the reformulated first electronic signals and causing the host operating system to use the reformulated first electronic signals to directly control the hardware component;
- receiving another indication indicating a second selection of the second virtual machine via the second communication path;
- and
- controlling the hardware component responsive to the second indication received via the second communication path by directing the second electronic signals and causing the host operating system to use the second electronic signals to control the hardware component through the API;
- wherein at least one of the first operating system instance and the second operating system instance control the hardware component and wherein the agent-server may provide a communication path independent of the hypervisor.
Dependencies are inferred from the claim text.