Patent ID: 8516506

Claim:
A method for executing an application stored in a file system, executed on a processor of a device, and utilizing an application programmers interface (API) to facilitate instructions from the application to the processor, the method comprising: initializing core software; retrieving the application from the file system; executing the application on the processor; monitoring interactions between the application and the processor for an API call; determining an amount of time lapsed without observing an API call and comparing the amount of time against a time threshold; maintaining a count indicating a number of times that the interactions between the processor and the application indicate that the application is in an error state, wherein an error state occurs when a predetermined amount of time lapses without the API call being observed; setting an application recovery flag when the count exceeds a predetermined threshold; retrieving a backup copy of the application from a backup memory space based on the monitoring for the API call; rebuilding the file system when the application flag is set, wherein the backup copy of the application is retrieved after the file system is rebuilt; and storing the backup copy of the application in the file system.