Patent ID: 7818622

Claim:
A method for recovering from failures occurred in a data processing system, said method comprising: storing a current version of boot code in a first memory region of a non-volatile memory, and an updated version of boot code in a second memory region of said non-volatile memory; after an occurrence of a system crash, determining whether or not said system crash was caused by a known problem that can be remedied by said updated version of boot code; in a determination that said system crash was caused by a known problem that can be remedied by said updated version of boot code, rebooting said data processing system using said updated version of boot code stored in said second memory region of said non-volatile memory; and in a determination that said system crash was not caused by a known problem that can be remedied by said updated version of boot code, collecting data related to said system crash and rebooting said data processing system using said current version of boot code stored in said first memory region of said non-volatile memory.