Patent ID: 8161479

Claim:
In a computing system having one or more physical hosts for executing virtual machines, a computer-implemented method for an application layer within the computer system to initiate and manage creation and operation of one or more virtual machines for one or more application programs through a virtual machine layer within the computing system, comprising the acts of: an executive application executing in an application layer of a computer system receiving one or more requests to install an application program within one or more virtual machines at a virtual machine layer of the computer system; in response to receiving the one or more requests, the executive application communicating with an application repository to determine one or more properties of the requested application program identified in the one or more requests, including properties identifying one or more configurations of virtual machines to which the requested application program can be deployed; based on the one or more properties, the executive application identifying one or more virtual machines available from a virtual machine library that should be deployed to execute the requested application program; subsequent to identifying the one or more virtual machines, the executive application automatically sending one or more virtual machine commands from the application layer to a virtual machine manager executing in the virtual machine layer, the one or more virtual machine commands instructing the virtual machine manager to deploy the identified one or more virtual machines from the virtual machine library for the requested application program; the executive application receiving one or more messages from the virtual machine manager indicating that the one or more virtual machines have been deployed; subsequent to receiving the one or more messages from the virtual machine manager, the executive application automatically sending one or more instructions to each of the one or more deployed virtual machines instructing each of the one or more deployed virtual machines to install the requested application program according to a configuration identified from the one or more properties.