A gaming machine may include memory, a software program loaded into the
memory and a trusted cache. The trusted cache may include a context data
save engine, a context data recovery engine and a restart engine. The
context data save engine may be configured to save the context and state
of the gaming machine at least upon sensing a failure condition. The
context data recovery engine may be configured to load the context and
state from the context data save engine back into memory, and the restart
engine may be configured to restart the gaming machine and restore
execution of the software program, and may be further configured to carry
out a multi-stage recovery process that may include a soft reboot, a
hardware reset and a power-off and, after a predetermined delay, a
power-on of the gaming machine, attempting to restart the software
program between each stage of the process.