Cisco processors have timers that guard against certain types of system hangs. The CPU periodically resets a watchdog timer. The watchdog timer basically controls the time of each process. If the timer is not reset, a trap occurs. If a process is longer than it must be, the watchdog timer is used to escape from this process.
This only occurs if something goes wrong. Based on the situation, the router can reset itself, or recover from the failure and generate an error message in the console logs, which looks like this:
*** Watch Dog Timeout ***
PC = 0x6022536C, SP = 0x00000000
%SYS-2-WATCHDOG: Process aborted on watchdog timeout, process = Exec
*** System received a Software forced crash ***
signal = 0x17, code = 0x24, context= 0x60ceca60