Patent ID: 7941801

Claim:
A method for virtual computing comprising: receiving, from a client, a first virtual computer specification, wherein the first virtual computer specification defines a plurality of hardware and software configuration requirements for a first virtual computer and a duration requirement for use of the first virtual computer; requisitioning a first plurality of computing resources based on the plurality of hardware and software configuration requirements, wherein the first plurality of computing resources are located on a plurality of processing servers; provisioning the first plurality of computing resources to obtain a first provisioned virtual computer, wherein the first provisioned virtual computer appears to the client as a single computer system; scheduling the first plurality of computing resources of the first provisioned virtual computer for use based on the duration requirement; receiving, after scheduling, a command to be executed on the first provisioned virtual computer; identifying, after receiving the command, the first plurality of computing resources of the first provisioned virtual computer; selecting, by a master server, a processing server of the plurality of processing servers, wherein the processing server comprises at least one of the first plurality of computing resources; processing, by the processing server, the command using the at least one of the first plurality of computing resources to generate a result; sending the result to the client; creating, for the client prior to scheduling the first plurality of computing resources, a client account comprising a plurality of administrative information and a client data storage, wherein the result is further outputted to the client data storage; reclaiming the first plurality of computing resources at an end of a duration specified by the duration requirement; receiving, from the client, a second virtual computer specification for a second virtual computer; requisitioning a second plurality of computing resources based on the second virtual computer specification; provisioning the second plurality of computing resources to obtain a second provisioned virtual computer; and associating the client data storage with the second provisioned virtual computer, wherein the client accesses the result outputted in the client data storage from the second provisioned virtual computer.