US4814971A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state
Assignee: Texas Instruments Inc
•
Filing: 1985-09-11
•
Granted: 1989-03-21
•
Expires: 2005-09-11
Abstract
Abstract Periodic checkpoints are taken of the state of a computer system and its virtual memory. If a system crash occurs, the machine state can be rolled back to the checkpoint state and normal operation restarted. Pages of virtual memory are timestamped to indicate whether they are included in the checkpoint state. Modifications made after the checkpoint time are discarded when the system state is rolled back to the saved checkpoint state. Some recordkeeping is maintained outside of the virtual memory address space in order to assist with the recovery process.
Inventors
- 👤 Satish M. Thatte
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-23 17:04
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1415; G06F11/1438; G06F9/00; G06F9/06; G06F9/44; G06F9/448; G06F9/4488; G06F9/4493
Claims Analysis
Total Claims: 5
Claim 1
Independent Claim
316 words
A computer system having a recoverable virtual memory, comprising: a virtual memory having a random access memory and a non-volatile mass storage system, said virtual memory defining a virtual address space having a plurality of memory locations; a plurality of memory objects allocated within said virtual address space, said memory objects interconnected by pointers; a persistent root having a pointer to a memory object, wherein all memory objects in the transitive closure of said persistent root are not subject to reclamation by the computer system during garbage collection; a plurality of virtual pages stored on the mass storage system, each of said virtual pages having a timestamp, each of said pages corresponding to a selected range of addresses within said address space and containing memory objects for such range, wherein a first subset of said virtual pages have an associated sibling page which contains a copy of memory objects of the addresses in the selected range, with each of the sibling pages having a timestamp, wherein a virtual page and its sibling page may have different data stored therein if they have different timestamps, with the virtual page of the sibling having the later timestamp containing the current memory objects for the selected range of addresses, and wherein a second subset of said virtual pages have no associated sibling a checkpoint time stored in a non-destructive manner, wherein virtual pages and sibling pages which have a timestamp less than said checkpoint time define a checkpoint state; means for moving virtual pages from said first subset to said second subset by deleting the associated sibling page, and for moving virtual pages from said second subset to said first subset by creating a sibling page therefor; and a record of which of said virtual pages have moved from the first subset to the second subset, and from the second subset to the first subset, since the checkpoint time.
Claim 2
Dependent Claim
316 words
A computer system having a recoverable virtual memory, comprising: a virtual memory having a random access memory and a non-volatile mass storage system, said virtual memory defining a virtual address space having a plurality of memory locations; a plurality of memory objects allocated within said virtual address space, said memory objects interconnected by pointers; a persistent root having a pointer to a memory object, wherein all memory objects in the transitive closure of said persistent root are not subject to reclamation by the computer system during garbage collection; a plurality of virtual pages stored on the mass storage system, each of said virtual pages having a timestamp, each of said pages corresponding to a selected range of addresses within said address space and containing memory objects for such range, wherein a first subset of said virtual pages have an associated sibling page which contains a copy of memory objects of the addresses in the selected range, with each of the sibling pages having a timestamp, wherein a virtual page and its sibling page may have different data stored therein if they have different timestamps, with the virtual page of the sibling having the later timestamp containing the current memory objects for the selected range of addresses, and wherein a second subset of said virtual pages have no associated sibling a checkpoint time stored in a non-destructive manner, wherein virtual pages and sibling pages which have a timestamp less than said checkpoint time define a checkpoint state; means for moving virtual pages from said first subset to said second subset by deleting the associated sibling page, and for moving virtual pages from said second subset to said first subset by creating a sibling page therefor; and a record of which of said virtual pages have moved from the first subset to the second subset, and from the second subset to the first subset, since the checkpoint time.
Claim 3
Dependent Claim
30 words
The computer system of claim 1, further including a record of which of said virtual pages and siblings have been written to the mass storage system since the checkpoint state.
Claim 4
Dependent Claim
22 words
The computer system of claim 2, wherein said record does not have an address within the address space of said virtual memory.
Claim 5
Dependent Claim
22 words
The computer system of claim 1, wherein said record does not have an address within the address space of said virtual memory.
References Cited (Backward Citations)
US3465300A
Cited
US3736566A
Cited
US4020466A
Cited
US4084231A
Cited
US4044337A
Cited
US4525800A
Cited
US4459658A
Cited
US4530054A
Cited
US4507751A
Cited
US4648031A
Cited
US4498145A
Cited
US4638426A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1992-03-20 | 1992-09-19 | 1993-03-21 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1996-03-20 | 1996-09-19 | 1997-03-21 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2000-03-20 | 2000-09-19 | 2001-03-21 | $7700.00 | Window Closed / Lapsed |