Template virtual machines
First Claim
1. A method of providing a template virtual machine, comprising:
- creating, on a physical server, a template virtual machine comprising an image of an operating system and software running on the operating system, the template virtual machine being without machine-specific identifiers;
booting the template virtual machine into a virtual machine environment;
sharing uniform code pages among other virtual machines that are running the same template virtual machine wherein the uniform code pages are shared in advance to booting a template virtual machine into a service instance and not dynamically, and wherein sharing comprises mapping a guest physical address space associated with the template virtual machine to uniform system pages that already have the uniform code pages resident;
instantiating a state separated store on a differencing virtual hard disk to actively intercept system access to various configuration data stored in a registry and create state containers in the state separated store and to redirect to the state separated store during a service instance boot, each of the state containers including a precedence rank that indicates an order in which the state containers are to be layered in the state separated store;
updating machine-specific identifiers of the template virtual machine; and
booting the template virtual machine with machine-specific identifiers, via the state separated store, into a service instance to perform a function determined by the software running on the operating system such that uniform code pages representing the operating system and software running on the operating system are shared among virtual machines in the virtual machine environment.
2 Assignments
0 Petitions
Accused Products
Abstract
There is provided a method of providing a template virtual machine. An exemplary method comprises creating a template virtual machine comprising an image of an operating system and software running on the operating system. The template virtual machine does not include machine-specific identifiers. The template virtual machine is booted into a virtual machine environment. Subsequently, machine-specific identifiers for the template virtual machine are updated. The template virtual machine may then be booted with machine-specific identifiers into a service instance to perform a function determined by the software running on the operating system such that uniform code pages representing the operating system and software running on the operating system are shared among virtual machines in the virtual machine environment.
23 Citations
21 Claims
-
1. A method of providing a template virtual machine, comprising:
-
creating, on a physical server, a template virtual machine comprising an image of an operating system and software running on the operating system, the template virtual machine being without machine-specific identifiers; booting the template virtual machine into a virtual machine environment; sharing uniform code pages among other virtual machines that are running the same template virtual machine wherein the uniform code pages are shared in advance to booting a template virtual machine into a service instance and not dynamically, and wherein sharing comprises mapping a guest physical address space associated with the template virtual machine to uniform system pages that already have the uniform code pages resident; instantiating a state separated store on a differencing virtual hard disk to actively intercept system access to various configuration data stored in a registry and create state containers in the state separated store and to redirect to the state separated store during a service instance boot, each of the state containers including a precedence rank that indicates an order in which the state containers are to be layered in the state separated store; updating machine-specific identifiers of the template virtual machine; and booting the template virtual machine with machine-specific identifiers, via the state separated store, into a service instance to perform a function determined by the software running on the operating system such that uniform code pages representing the operating system and software running on the operating system are shared among virtual machines in the virtual machine environment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system for providing a template virtual machine, the system comprising:
-
a processing unit; and a system memory, wherein the system memory comprises code configured to direct the processing unit to; create a template virtual machine comprising an image of an operating system and software running on the operating system, the template virtual machine being without machine-specific identifiers; boot the template virtual machine into a virtual machine environment; share uniform code pages among other virtual machines that are running the same template virtual machine wherein the uniform code pages are shared in advance to booting a template virtual machine into a service instance and not dynamically, and wherein sharing comprises mapping a guest physical address space associated with the template virtual machine to uniform system pages that already have the uniform code pages resident; instantiate a state separated store on a differencing virtual hard disk to actively intercept system access to various configuration data stored in a registry and create state containers in the state separated store and to redirect to the state separated store during a service instance boot, each of the state containers including a precedence rank that indicates an order in which the state containers are to be layered in the state separated store; update machine-specific identifiers of the template virtual machine; and boot the template virtual machine with machine-specific identifiers into a service instance to perform a function determined by the software running on the operating system such that uniform code pages representing the operating system and software running on the operating system are shared among virtual machines in the virtual machine environment. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
21. One or more computer-readable storage memory, comprising code configured to direct a processing unit to:
-
create a template virtual machine comprising an image of an operating system and software running on the operating system, the template virtual machine being without machine-specific identifiers; boot the template virtual machine into a virtual machine environment; share uniform code pages among other virtual machines that are running the same template virtual machine wherein the uniform code pages are shared in advance to booting a template virtual machine into a service instance and not dynamically, and wherein sharing comprises mapping a guest physical address space associated with the template virtual machine to uniform system pages that already have the uniform code pages resident; instantiate a state separated store on a differencing virtual hard disk to actively intercept system access to various configuration data stored in a registry and create state containers in the state separated store and to redirect to the state separated store during a service instance boot, each of the state containers including a precedence rank that indicates an order in which the state containers are to be layered in the state separated store; add machine-specific identifiers to the template virtual machine; and boot the template virtual machine with machine-specific identifiers into a service instance to perform a function determined by the software running on the operating system such that uniform code pages representing the operating system and software running on the operating system are shared among virtual machines in the virtual machine environment, the uniform code pages comprising identical physical memory pages, and the uniform code pages being identified in advance of booting the template virtual machine into the service instance of the virtual machine environment.
-
Specification