Patent ID: 8533151

Claim:
A computer, comprising: a processor; and a local storage device containing computer-executable instructions that, when executed by the processor, cause the computer to generate a local copy of a virtualized application package from a skeleton file and a virtual file system representation of a local installation of an application associated with the virtualized application package, wherein the virtualized application package comprises one or more data blocks containing a contents of one or more component files of the application, wherein the skeleton file comprises a data block header and data block hash pair corresponding to each of the one or more data blocks in the virtualized application package, the data block hash computed from the contents of the corresponding data block in the virtualized application package, wherein the skeleton file does not contain the contents of the one or more data blocks, and wherein generating the local copy of the virtualized application package comprises generating an empty copy of the virtualized application package on the local storage device from the skeleton file, the empty copy of the virtualized application package comprising an empty data block corresponding to each data block header and data block hash pair in the skeleton file, for each of the one or more component files of the application, dividing the component file into one or more blocks of data, for each of the one or more blocks of data, computing a hash value for the block of data, searching the skeleton file for a data block hash matching the hash value computed for the block of data, upon locating a matching data block hash in the skeleton file, copying the block of data to the empty data block of the empty copy of the virtualized application package corresponding to the data block header and data block hash pair from the skeleton file, and upon not locating a matching data block hash in the skeleton file, discarding the block of data.