Patent US6314532B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6314532B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Method and system for recovering from a software failure

Assignee: RPX Corp
•
Filing: 1998-12-04
•
Granted: 2001-11-06
•
Expires: 2018-12-04
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system recover from a failure of an operational software program. A second software program which is known to function properly and is capable of downloading an updated copy of operational software is stored on the computer with the first software program. The second software program is a boot program which monitors resets of the first software program, determines if the number of resets which have occurred without the operational software first having reached a set operating point (such as establishing communication with a remote computer) reaches a threshold, and preempts operation of the first software program when the threshold is reached.

Inventors

  • 👤 Douglas Streeter Daudelin
  • 👤 Harvey Rubin

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 08:28
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1415; G06F11/1433; G06F11/1417; H; H04; H04W; H04W24/00; H04W24/04

Claims Analysis

Total Claims: 39
Claim 1
Independent Claim 78 words
A method for recovering from a failure of a first software program, the method comprising: resetting the first software program when a set operating point is not reached; monitoring the number of resets of the first software program invoked without reaching the set operating point; and if the number of resets reaches a threshold, preempting operation of the first software program and operating a second software program to thereby correct the failure or replace the first software program.
Claim 2
Independent Claim 78 words
A method for recovering from a failure of a first software program, the method comprising: resetting the first software program when a set operating point is not reached; monitoring the number of resets of the first software program invoked without reaching the set operating point; and if the number of resets reaches a threshold, preempting operation of the first software program and operating a second software program to thereby correct the failure or replace the first software program.
Claim 3
Dependent Claim 29 words
The method of claim 1 , wherein the step of monitoring comprises counting the number of resets of the first software program invoked without reaching the set operating point.
Claim 4
Dependent Claim 28 words
The method of claim 2 , wherein the step of counting comprises storing a variable representing the number of consecutive resets invoked without reaching the set operating point.
Claim 5
Dependent Claim 28 words
The method of claim 3 , comprising incrementing the variable at each reset, and setting the variable to zero when the software program achieves the set operating point.
Claim 6
Dependent Claim 20 words
The method of claim 3 , wherein the step of storing comprises storing the variable in a non-volatile memory device.
Claim 7
Dependent Claim 18 words
The method of claim 3 , comprising validating the variable before preempting operation of the first software program.
Claim 8
Dependent Claim 62 words
The method of claim 6 , wherein the step of validating comprises: complementing the variable after the variable is incremented to produce a first complement; storing the first complement; and after a reset of the first software program, retrieving the variable and stored first complement, complementing the variable to produce a second complement, and comparing the first complement to the second complement.
Claim 9
Dependent Claim 23 words
The method of claim 2 , wherein the step of monitoring comprises counting the number of consecutive resets of the first software program.
Claim 10
Dependent Claim 17 words
The method of claim 1 , comprising storing the second software program in a non-volatile memory device.
Claim 11
Dependent Claim 26 words
The method of claim 1 , comprising executing the second software program upon each reset, the second software program causing the first software program to execute.
Claim 12
Dependent Claim 42 words
The method of claim 10 , comprising validating the first software program before causing the first software program to execute, a failure to validate the first software program being a failure of the first software program to achieve a predefined operating point.
Claim 13
Dependent Claim 29 words
The method of claim 11 , wherein the step of validating comprises computing a checksum of the first software program and comparing the computed checksum with a stored checksum.
Claim 14
Dependent Claim 23 words
The method of claim 10 , wherein the second software program is a boot program, and wherein the step of resetting comprises rebooting.
Claim 15
Dependent Claim 33 words
The method of claim 1 , wherein the first and second software programs reside on a first computerized device which is coupled via a communication link with a remotely located host computerized device.
Claim 16
Dependent Claim 32 words
The method of claim 14 , comprising the second software program transmitting a message to the host computerized device when the number of resets of the first software program reaches the threshold.
Claim 17
Dependent Claim 27 words
The method of claim 15 , comprising transmitting from the host computerized device to the first computerized device an upgrade program to replace the first software program.
Claim 18
Dependent Claim 32 words
The method of claim 14 , comprising transmitting from the host computerized device to the first computerized device one or more commands to reset the first software program one or more times.
Claim 19
Dependent Claim 36 words
The method of claim 17 , comprising transmitting reset commands from the host computerized device until the number of resets of the first software program reaches the threshold, thereby causing the second software program to operate.
Claim 20
Dependent Claim 26 words
The method of claim 14 , comprising resetting the first software program at least once when it fails to establish communications with the host computerized device.
Claim 21
Dependent Claim 12 words
The method of claim 1 , comprising pre-defining the set operating point.
Claim 22
Independent Claim 127 words
A system for recovering from a failure of a first software program operating on a computerized device, the system comprising: processing means for executing the first software program and resetting the first software program at least once when the first software program fails to reach a set operating point; nonvolatile memory for storing a second software program which when executed monitors the resets of the first software program caused by the first software program failing to reach the set operating point, determines whether the number of resets reaches a predetermined threshold, and preempts operation of the first software program when the predetermined threshold is reached; and means for correcting the failure of the first software program or replacing the first software program when the threshold is reached.
Claim 23
Independent Claim 127 words
A system for recovering from a failure of a first software program operating on a computerized device, the system comprising: processing means for executing the first software program and resetting the first software program at least once when the first software program fails to reach a set operating point; nonvolatile memory for storing a second software program which when executed monitors the resets of the first software program caused by the first software program failing to reach the set operating point, determines whether the number of resets reaches a predetermined threshold, and preempts operation of the first software program when the predetermined threshold is reached; and means for correcting the failure of the first software program or replacing the first software program when the threshold is reached.
Claim 24
Dependent Claim 23 words
The system of claim 21 , wherein the computerized device is coupled via a communications link with a remotely located host computerized device.
Claim 25
Dependent Claim 31 words
The system of claim 22 , wherein the processing means comprises means for resetting the first software program when the computerized device fails to establish communications with the host computerized device.
Claim 26
Dependent Claim 34 words
The system of claim 22 , comprising means for transmitting a message from the computerized device to the host computerized device when the number of resets of the first software program reaches the threshold.
Claim 27
Dependent Claim 28 words
The system of claim 22 , comprising means for transmitting from the host computerized device to the computerized device an upgrade program to replace the first software program.
Claim 28
Dependent Claim 45 words
The system of claim 22 , comprising means for transmitting one or more reset commands from the host computerized device to the computerized device until the number of resets of the first software program reaches the threshold, thereby causing the second software program to operate.
Claim 29
Dependent Claim 36 words
The system of claim 21 , wherein the second software program monitors by storing in nonvolatile memory a variable representing the number of resets of the first software program and incrementing the variable at each reset.
Claim 30
Independent Claim 101 words
A system comprising: a first computerized device; a host computerized device coupled via a communication link to the first computerized device; an operational software program residing on the first computerized device for operating the first computerized device; and a second software program residing on the first computerized device for resetting the first computerized device when the operational software program fails to achieve a set operating point, counting the number of resets of the operational software program, and when the number of resets reaches a threshold, preempting operation of the operational software program and transmitting a message to the host computerized device.
Claim 31
Independent Claim 101 words
A system comprising: a first computerized device; a host computerized device coupled via a communication link to the first computerized device; an operational software program residing on the first computerized device for operating the first computerized device; and a second software program residing on the first computerized device for resetting the first computerized device when the operational software program fails to achieve a set operating point, counting the number of resets of the operational software program, and when the number of resets reaches a threshold, preempting operation of the operational software program and transmitting a message to the host computerized device.
Claim 32
Independent Claim 113 words
A method performed by a boot software program for recovering from a failure of an operational software program operating on a computerized device to achieve a predefined operating point, the computerized device being coupled to a host computerized device, the method comprising: rebooting the computerized device when the operational software program fails; executing the operational software program after a reboot; storing in a nonvolatile memory in the first computerized device a variable representing the number of reboots of the operational software program; incrementing the variable at each reboot; and if the number of reboots reaches a threshold, preempting operation of the operational software program and transmitting a message to the host computerized device.
Claim 33
Independent Claim 113 words
A method performed by a boot software program for recovering from a failure of an operational software program operating on a computerized device to achieve a predefined operating point, the computerized device being coupled to a host computerized device, the method comprising: rebooting the computerized device when the operational software program fails; executing the operational software program after a reboot; storing in a nonvolatile memory in the first computerized device a variable representing the number of reboots of the operational software program; incrementing the variable at each reboot; and if the number of reboots reaches a threshold, preempting operation of the operational software program and transmitting a message to the host computerized device.
Claim 34
Dependent Claim 30 words
The system of claim 29 , wherein the step of rebooting the computerized device comprises rebooting when the operational software program fails to establish communications with the host computerized device.
Claim 35
Dependent Claim 35 words
The system of claim 29 , comprising receiving one or more reset commands from the host computerized device and rebooting the computerized device at each reset command until the number of reboots reaches the threshold.
Claim 36
Dependent Claim 24 words
The system of claim 29 , comprising replacing the operational software program with a replacement operational software program received from the host computerized device.
Claim 37
Dependent Claim 18 words
The system of claim 29 , comprising validating the operational software program before executing the operational software program.
Claim 38
Dependent Claim 95 words
A computer readable medium storing one or more programs which when executed on a computerized device implement a method for recovering from a failure of a first software program, the method comprising: resetting the first software program when a set operating point is not reached; monitoring the number of resets of the first software program invoked without reaching the set operating point; and if the number of resets reaches a threshold, preempting operation of the first software program and operating a second software program to thereby correct the failure or replace the first software program.
Claim 39
Dependent Claim 95 words
A computer readable medium storing one or more programs which when executed on a computerized device implement a method for recovering from a failure of a first software program, the method comprising: resetting the first software program when a set operating point is not reached; monitoring the number of resets of the first software program invoked without reaching the set operating point; and if the number of resets reaches a threshold, preempting operation of the first software program and operating a second software program to thereby correct the failure or replace the first software program.

References Cited (Backward Citations)

US3909795A Cited
US4237533A Cited
US5421006A Cited
US5951699A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-11-05 2005-05-07 2005-11-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-11-05 2009-05-07 2009-11-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-11-05 2013-05-07 2013-11-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag