US7360039B2ExpiredUtilityA1

Arrangements storing different versions of a set of data in separate memory areas and method for updating a set of data in a memory

67
Assignee: BELLE GATE INVEST B VPriority: Jun 10, 1999Filed: Jun 21, 2004Granted: Apr 15, 2008
Est. expiryJun 10, 2019(expired)· nominal 20-yr term from priority
G06F 8/65G06F 9/44536G06F 11/1433Y10S707/99953G06F 12/00
67
PatentIndex Score
13
Cited by
149
References
24
Claims

Abstract

Computer-readable medium storing a data structure for supporting persistant storage of a set of data, the data structure including: (a) at least an oldest version of the set of data in a first memory area the first memory area including at least one first tag for uniquely identifying the oldest version, and (b) at least a most recently updated version of the set of data in a second, distinct memory area, the second memory area including at least one second tag for uniquely identifying the most recently updated version. The invention also relates to a computer arrangement including a processor and such a computer-readable medium, as well as to a method of updating sets of data having such tagged-data structures.

Claims

exact text as granted — not AI-modified
The invention claimed is: 
     
       1. A method for ensuring at least one valid version of a software object is stored in a memory device, comprising:
 incrementally storing versions of the software object in memory locations in the memory device, including creating each version of the software object based on a copy of a previous verified version of the software object stored in the memory device, each version of the software object being created using a second memory device; 
 verifying each version as it is stored in the memory device; 
 receiving a request to access the software object; and 
 using a latest verified version of the software object for processing the access request. 
 
     
     
       2. The method of  claim 1 , wherein incrementally storing versions of the software object includes:
 storing in each memory location a tag identifying the version of the software object stored in each memory location. 
 
     
     
       3. The method of  claim 1 , wherein verifying includes deallocating a memory location storing an oldest version of the software object when at least one verified version of the software object is stored in a memory location. 
     
     
       4. The method of  claim 2 , wherein each tag is stored after storing the identified version of the software object. 
     
     
       5. The method of  claim 1 , wherein the method is performed by a processing system in a smart card. 
     
     
       6. The method of  claim 2 , wherein each memory location includes one or more portions of the memory device and wherein each stored version of the software object is associated with a respective tag stored in each of the one or more portions of the memory. 
     
     
       7. The method of  claim 6 , wherein the one or more portions of the memory device includes at least one of consecutive memory portions and non-consecutive memory portions. 
     
     
       8. The method of  claim 2 , wherein verifying includes:
 verifying each version as it is stored in the memory device using the tag for the respective version of the software object. 
 
     
     
       9. The method of  claim 8 , wherein verifying includes:
 using the tags to determine whether a respective version of the software object is correctly stored in the appropriate respective memory location. 
 
     
     
       10. The method of  claim 1 , wherein the second memory device is a volatile memory device and the memory device is a non-volatile memory device. 
     
     
       11. The method of  claim 1 , wherein verifying includes:
 detecting an event that interrupts the storing of a current version of the software object in a respective memory location; and 
 determining that the current version is unverified based on the detected event. 
 
     
     
       12. The method of  claim 11 , wherein the latest verified version of the software object is used to create the current version of the software object. 
     
     
       13. A system for ensuring at least one valid version of a software object is stored in a memory device, comprising:
 means for storing versions of the software object in respective memory locations in the memory device, including creating each version of the software object based on a copy of a previous verified version of the software object stored in the memory device, each version of the software object being created using a second memory device; 
 means for verifying each version as it is stored in the memory device; 
 means for receiving a request to access the software object; and 
 means for using a latest verified version of the software object for processing the access request. 
 
     
     
       14. The system of  claim 13 , wherein the means for storing versions of the software object includes:
 means for storing in each memory location a tag identifying the version of the software object stored in each respective memory location. 
 
     
     
       15. The system of  claim 13 , wherein the means for verifying includes means for deallocating a memory location storing an oldest version of the software object when at least one verified version of the software object is stored in a memory location. 
     
     
       16. The system of  claim 13 , wherein each tag is stored after storing the identified version of the software object. 
     
     
       17. The system of  claim 14 , wherein the system is a smart card. 
     
     
       18. The system of  claim 14 , wherein each memory location includes one or more portions of the memory device and wherein each stored version of the software object is associated with a respective tag stored in each of the one or more portions of the memory. 
     
     
       19. The system of  claim 18 , wherein the one or more portions of the memory device includes at least one of consecutive memory portions and non-consecutive memory portions. 
     
     
       20. The system of  claim 14 , wherein the means for verifying includes:
 means for verifying each version as it is stored in the memory device using the tag for the respective version of the software object. 
 
     
     
       21. The system of  claim 20 , wherein the means for verifying includes:
 means for using the tags to determine whether a respective version of the software object is correctly stored in the appropriate respective memory location. 
 
     
     
       22. The system of  claim 13 , wherein the second memory device is a volatile memory device and the memory device is a non-volatile memory device. 
     
     
       23. The system of  claim 13 , wherein the means for verifying includes:
 means for detecting an event that interrupts the storing of a current version of the software object in a respective memory location; and 
 means for determining that the current version is unverified based on the detected event. 
 
     
     
       24. The system of  claim 23 , wherein the latest verified version of the software object is used to create the current version of the software object.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.