Patent ID: 8255650

Claim:
A computer implemented method for creating and maintaining a portable computing environment, wherein one or more processors are programmed to perform steps comprising: creating a baseline image on an external storage device connected to a host computer system, the baseline image comprising data representing a first state of a native host environment of the host computer system including data and programs installed on the host computer system, wherein the baseline image can be launched on a virtual machine; identifying changes to a state of the native host environment, wherein identifying the changes to the state of the native host environment includes performing a block by block comparison of a first set of in-use storage locations storing data for the native host environment and a second set of corresponding locations on the external storage device, generating a first allocation bitmap representing in-use storage locations on the host computer system at which data is stored and free storage locations on the host computer system at which data is not stored, generating a second allocation bitmap representing in-use storage locations on the external storage device on which the baseline image is stored and free-storage locations on the external storage device at which data is not, and comparing the in-use storage locations of the first allocation bitmap to the in-use storage locations of the second allocation bitmap to identify changes made to the native host environment; generating a delta image representing the identified changes to the native host environment, the delta image comprising data from changed blocks; and writing the delta image to the external storage device to provide an aggregate baseline image, the aggregate baseline image comprising the baseline image and the delta image.