Patent ID: 8631397

Claim:
A method for patching a virtualized application, comprising: storing a current version of a virtual application image at a first location; wherein the virtual application image captures setup-time changes and run-time changes made to a computing device by the virtualized application; wherein the virtual application image is segmented into blocks; accessing a current mapping file from the first location for the current version of the virtual application image that is a separate file from the virtual application image and comprises a number of blocks in the virtual application image and a location of each block in the virtual application image; storing the current mapping file on a client computing device that is configured to run the virtualized application; determining on the client computing device changes to a client virtual application image by comparing the current mapping file to a client mapping file stored on the client computing device, wherein the client mapping file comprises a number of blocks in the client virtual application image and a location of each block in the client virtual application image; obtaining essential blocks from the virtual application image from the first location when the client computing device is executing the virtualized application in a network mode, wherein the blocks that are marked as essential for execution are downloaded; obtaining the changes from the current version of the virtual application image at the first location; and updating a client version of the client virtual application image using the obtained changes and any portion of the client virtual application image that did not change.