Method for remotely and reliably updating of the software on a computer with provision for roll back
First Claim
1. 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.
3 Assignments
0 Petitions
Accused Products
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.
102 Citations
18 Claims
-
1. 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. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. 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. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. 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. - View Dependent Claims (14, 15)
-
-
16. 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. - View Dependent Claims (17, 18)
-
Specification