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

Method for remotely and reliably updating of the software on a computer with provision for roll back

Assignee: Nokia of America Corp
•
Filing: 1998-01-30
•
Granted: 2000-10-31
•
Expires: 2018-01-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A technique for updating the software in a remote computer (e.g., a base station, a spacecraft in space, an electronic postage meter in an office, a medical monitoring device in a patient's home, etc.) from a central control (e.g., a wireless switching center, the National Aeronautics and Space Administration's Houston Control, a postage meter facility, a medical equipment manufacturer's factory, etc.) is disclosed. An illustrative embodiment of the present invention comprises: checking the integrity of a first software application at a first location in a first memory that is pointed to by a first address in a pointer; copying the first software application from the first memory to the second memory and executing the first software application from the second memory, when the integrity of the first software application is nominal; transmitting a first message indicating that the integrity of the first software application is not nominal, when the integrity of the first software application is not nominal; and receiving a first command to store a second address in the pointer, in response to the first message.

Inventors

  • 👤 Mark Heinrich Kraml
  • 👤 Jane Mary Leonard
  • 👤 Harvey Rubin
  • 👤 Laurel Ann Salvador

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 12:16
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/60; G06F8/65; G06F8/656

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 119 words
A method comprising: checking the integrity of a first software application at a first location in a first memory that is pointed to by a first address in a pointer; copying, after said checking the integrity of said first software application, said first software application from said first memory to said second memory and executing said first software application from said second memory when the integrity of said first software application is nominal; transmitting a first message indicating that the integrity of said first software application is not nominal, when the integrity of said first software application is not nominal; and receiving a first command to store a second address in said pointer, in response to said first message.
Claim 2
Independent Claim 119 words
A method comprising: checking the integrity of a first software application at a first location in a first memory that is pointed to by a first address in a pointer; copying, after said checking the integrity of said first software application, said first software application from said first memory to said second memory and executing said first software application from said second memory when the integrity of said first software application is nominal; transmitting a first message indicating that the integrity of said first software application is not nominal, when the integrity of said first software application is not nominal; and receiving a first command to store a second address in said pointer, in response to said first message.
Claim 3
Dependent Claim 31 words
The method of claim 1 further comprising checking the integrity of a second software application at a second location in said first memory that is pointed to by said second address.
Claim 4
Dependent Claim 50 words
The method of claim 2 further comprising: executing said second software application, when the integrity of said second software application is nominal; and transmitting a second message indicating that the integrity of said second software application is not nominal, when the integrity of said second software application is not nominal.
Claim 5
Dependent Claim 38 words
The method of claim 3 further comprising: receiving a copy of said first software application, in response to said second message; and storing said copy of said first software application at a third location in said first memory.
Claim 6
Dependent Claim 13 words
The method of claim 4 wherein said first location equals said third location.
Claim 7
Dependent Claim 117 words
The method of claim 3 further comprising: receiving a second command to store a third address in said pointer; checking the integrity of said copy of said first software application in said first memory, which is pointed to by said third address in said pointer; copying copy of said first software application from said first memory to said second memory arid executing said copy of said first software application from said second memory, when the integrity of said first software application is nominal; and transmitting a third message indicating that the integrity of said copy of said first software application is not nominal, when the integrity of said copy of said first software application is not nominal.
Claim 8
Independent Claim 130 words
An apparatus comprising: a processor for checking the integrity of a first software application at a first location in a first memory that is pointed to by a first address in a pointer, and for copying, after said checking the integrity of said first software application, said first software application from said first memory to a second memory and executing said first software application from said second memory when the integrity of said first software application is nominal; a transmitter for transmitting a first message indicating that the integrity of said first software application is not nominal, when the integrity of said first software application is not nominal; and a receiver for receiving a first command to store a second address in said pointer, in response to said first message.
Claim 9
Independent Claim 130 words
An apparatus comprising: a processor for checking the integrity of a first software application at a first location in a first memory that is pointed to by a first address in a pointer, and for copying, after said checking the integrity of said first software application, said first software application from said first memory to a second memory and executing said first software application from said second memory when the integrity of said first software application is nominal; a transmitter for transmitting a first message indicating that the integrity of said first software application is not nominal, when the integrity of said first software application is not nominal; and a receiver for receiving a first command to store a second address in said pointer, in response to said first message.
Claim 10
Dependent Claim 31 words
The apparatus of claim 7 wherein said processor checks the integrity of a second software application in said first memory that is pointed to by a second address in said pointer.
Claim 11
Dependent Claim 53 words
The apparatus of claim 8 wherein said processor executes said second software application, when the integrity of said second software application is nominal; and said transmitter transmits a second message indicating that the integrity of said second software application is not nominal, when the integrity of said second software application is not nominal.
Claim 12
Dependent Claim 41 words
The apparatus of claim 8 wherein said receiver receives a copy of said first software application, in response to said second message; and said processor stores said copy of said first software application at a third location in said first memory.
Claim 13
Dependent Claim 13 words
The apparatus of claim 10 wherein said first location equals said third location.
Claim 14
Dependent Claim 105 words
The apparatus of claim 10 wherein: said processor receives a second command to store said third address in said pointer, and checks the integrity of said copy of said first software application in said first memory that is pointed to by said third address in said pointer, and executes said copy of said first software application, when the integrity of said copy of said first software application is nominal; and said transmitter transmits a third message indicating that the integrity of said copy of said first software application is not nominal, when the integrity of said copy of said first software application is not nominal.
Claim 15
Independent Claim 116 words
A method comprising: transmitting a first software application to a remote computer for storage in a first location in a first memory that is pointed to by a first address; transmitting a first command to said remote computer directing said remote computer to store said first address in a pointer; receiving a first message from said remote computer indicating that the integrity of said first software application in said first memory is not nominal; and transmitting a second command to said remote computer directing said remote computer to store a second address, which points to a second software application in a second location in said first memory, in said pointer, in response to said first message.
Claim 16
Independent Claim 116 words
A method comprising: transmitting a first software application to a remote computer for storage in a first location in a first memory that is pointed to by a first address; transmitting a first command to said remote computer directing said remote computer to store said first address in a pointer; receiving a first message from said remote computer indicating that the integrity of said first software application in said first memory is not nominal; and transmitting a second command to said remote computer directing said remote computer to store a second address, which points to a second software application in a second location in said first memory, in said pointer, in response to said first message.
Claim 17
Dependent Claim 82 words
The method of claim 13 further comprising: receiving a second message from said remote computer indicating that the integrity of said second software application in said first memory is not nominal; transmitting a copy of said first software application to said remote computer for storage in a third location in said first memory that is pointed to by a third address; and transmitting a third command to said remote computer directing said remote computer to store said third address in said pointer.
Claim 18
Dependent Claim 13 words
The method of claim 14 wherein said first location equals said third location.
Claim 19
Dependent Claim 126 words
A wireless switching center comprising: means for transmitting a first software application to a remote computer for storage in a first location in a first memory that is pointed to by a first address; means for transmitting a first command to said remote computer directing said remote computer to store said first address in a pointer; means for receiving a first message from said remote computer indicating that the integrity of said first software application in said first memory is not nominal; and means for transmitting a second command to said remote computer directing said remote computer to store a second address, which points to a second software application in a second location in said first memory, in said pointer, in response to said first message.
Claim 20
Dependent Claim 126 words
A wireless switching center comprising: means for transmitting a first software application to a remote computer for storage in a first location in a first memory that is pointed to by a first address; means for transmitting a first command to said remote computer directing said remote computer to store said first address in a pointer; means for receiving a first message from said remote computer indicating that the integrity of said first software application in said first memory is not nominal; and means for transmitting a second command to said remote computer directing said remote computer to store a second address, which points to a second software application in a second location in said first memory, in said pointer, in response to said first message.
Claim 21
Dependent Claim 90 words
The wireless switching center of claim 16 further comprising: means for receiving a second message from said remote computer indicating that the integrity of said second software application in said first memory is not nominal; means for transmitting a copy of said first software application to said remote computer for storage in a third location in said first memory that is pointed to by a third address; and means for transmitting a third command to said remote computer directing said remote computer to store said third address in said pointer.
Claim 22
Dependent Claim 15 words
The wireless switching center of claim 17 wherein said first location equals said third location.

References Cited (Backward Citations)

US5155837A Cited
US5873088A Cited
US5555418A Cited
US5359730A Cited
US5798785A Cited
US5481714A Cited
US5682533A Cited
US5625804A Cited
US5764992A Cited
US6031830A Cited
US6070012A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-10-31 2004-05-01 2004-10-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-10-31 2008-05-01 2008-10-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-10-31 2012-05-01 2012-10-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag