Patent ID: 8904373

Claim:
A method for archiving particular data of an application while the application is executing, the method comprising: identifying a set of variables associated with the application, wherein each variable in the set of variables is marked as a persistent variable to be periodically archived to a non-volatile storage, and each variable in the set of variables indicates a particular manner selected from a plurality of manners in which the variable is to be archived to the non-volatile storage; and during execution of the application and when the application is terminating: selecting, from a system memory, one or more objects associated with the application, wherein the one or more objects comprises the set of variables, retrieving, from the one or more objects, a latest value for each variable in the set of variables, generating one or more streams of data by combining the latest value for each variable in the set of variables into the one or more streams of data, saving the one or more streams of data in the system memory, deconstructing the one or more objects, wherein deconstructing the one or more objects comprises disengaging at least one object of the one or more objects from other objects of the one or more objects, and archiving, according to the particular manners associated with the set of variables, the one or more streams of data to the non-volatile storage.