Patent ID: 7698699

Claim:
A method for updating an application residing on a storage device of a computing device, the method comprising: operating the computing device in a simulation mode wherein the computing device does not allow data to be committed to the storage device; simulating the update on the computing device by operating the computing device in the simulation mode and performing all necessary actions except for actually committing file data and modified metadata relating to the update to the storage device, wherein the computing device includes a file system and the file system maintains metadata relating to files stored on the storage device and metadata relating to available storage space on the storage device, and modifying a file includes modifying data relating to the modified file, modifying metadata relating to the modified file, and modifying metadata relating to the storage device; determining on the computing device whether the simulated update succeeded; if the simulated update is deemed to be unsuccessful, discontinuing the updating of the application and operating the computing device in a regular mode wherein the computing device allows data to be committed to the storage device; and if the simulated update is deemed to have succeeded, performing the update on the computing device by operating the computing device in the regular mode and performing the same necessary actions and also actually committing the modified file data and modified metadata relating to the update to the storage device.