Patent ID: 8381231

Claim:
A computer-implemented method for virtualizing applications on a computer using containers, the method comprising: receiving a virtualized container at a managed endpoint from a remote computer, the virtualized container comprising an application and a virtualization module, the virtualization module comprising computer program instructions for virtualizing the application; storing the virtualized container at the managed endpoint; determining that a new application has started executing on the computer; determining that the new application is part of a virtualized container; intercepting by the virtualization module an operating system application program interface (API) call made by the application during execution of the application; responsive to determining that the new application is part of the virtualized container, hooking the computer program instructions for virtualizing the application into appropriate operating system API calls; and executing a portion of the computer program instructions of the virtualization module based on the operating system API call, wherein the portion of the computer program instructions modify a behavior of the application to effect a virtualization of the application.