← Back to Patent Explorer
US6105148A Expired / Lapsed US ⏱️ 0.0 years remaining

Persistent state checkpoint and restoration systems

Assignee: Nokia of America Corp
•
Filing: 1995-06-16
•
Granted: 2000-08-15
•
Expires: 2015-06-16
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract By checkpointing and restoring a user application process, that includes a volatile state and a persistent state, recovery of an application process from the checkpoint position is possible. Specifically, a volatile state is checkpointed in a checkpoint position. Next, the persistent state is monitored to detect a file operation following a checkpoint position that will modify the persistent state. Then, portions of the persistent state are checkpointed if a modification of the persistent state is about to be performed. Then, a recovery to the checkpoint position can be performed such that modifications to the persistent state since the checkpoint position are undone. This allows for resumption of the user application process from the checkpoint position.

Inventors

  • 👤 Pi-Yu Chung
  • 👤 Yennun Huang
  • 👤 Chandra Kintala
  • 👤 Kiem-Phong Vo
  • 👤 Yi-Min Wang

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 10:09
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1415; G06F11/1438

Claims Analysis

Total Claims: 19
Claim 1
Independent Claim 137 words
A method for checkpointing and restoring a user application process executing on a computer system, said user application process having a process state which includes a volatile state and a persistent state, said persistent state comprised of one or more user files, said method comprising the steps of: checkpointing the volatile state at a checkpoint position; monitoring the persistent state to detect a file operation following the checkpoint position that will modify the persistent state; checkpointing at least the portions of the persistent state to be modified if said monitoring step detects that a modification of the persistent state is about to be performed; restoring the process state to said checkpoint position, whereby said modifications to said persistent state since the checkpoint position are undone; and resuming execution of the user application process from the checkpoint position.
Claim 2
Independent Claim 137 words
A method for checkpointing and restoring a user application process executing on a computer system, said user application process having a process state which includes a volatile state and a persistent state, said persistent state comprised of one or more user files, said method comprising the steps of: checkpointing the volatile state at a checkpoint position; monitoring the persistent state to detect a file operation following the checkpoint position that will modify the persistent state; checkpointing at least the portions of the persistent state to be modified if said monitoring step detects that a modification of the persistent state is about to be performed; restoring the process state to said checkpoint position, whereby said modifications to said persistent state since the checkpoint position are undone; and resuming execution of the user application process from the checkpoint position.
Claim 3
Dependent Claim 17 words
The method according to claim 1 wherein said checkpointing of the volatile state is automatically invoked periodically.
Claim 4
Dependent Claim 24 words
The method according to claim 1 wherein said checkpointing of the volatile state is invoked by a function call in said user application program.
Claim 5
Dependent Claim 31 words
The method according to claim 1 wherein said checkpointing of the persistent state is invoked by one or more interception routines which detect file operations that will modify the persistent state.
Claim 6
Dependent Claim 50 words
The method according to claim 1 further comprising the step of specifying one or more user files to be excluded from said checkpoint and wherein said step of checkpointing at least the portions of the persistent state to be modified does not include a checkpoint of the specified excluded files.
Claim 7
Dependent Claim 31 words
The method according to claim 1 wherein said checkpointing of the persistent state is not performed until an inconsistency between the volatile state and the persistent state is about to occur.
Claim 8
Dependent Claim 41 words
The method according to claim 1 wherein said checkpointed portion of the persistent state is an intermediate state, and wherein said step of resuming execution of the user application process will process one or more future inputs from said intermediate state.
Claim 9
Independent Claim 111 words
A method for checkpointing and restoring a user application process executing on a computer system, said user application process having a process state which includes a volatile state and a persistent state, said persistent state comprised of one or more user files, said method comprising the steps of: checkpointing the volatile state at a checkpoint position; checkpointing at least the portions of at least one user file to be modified for each modification performed following the checkpoint position; restoring the process state to said checkpoint position, whereby said modifications to said user files since the checkpoint position are undone; and resuming execution of the user application process from the checkpoint position.
Claim 10
Independent Claim 111 words
A method for checkpointing and restoring a user application process executing on a computer system, said user application process having a process state which includes a volatile state and a persistent state, said persistent state comprised of one or more user files, said method comprising the steps of: checkpointing the volatile state at a checkpoint position; checkpointing at least the portions of at least one user file to be modified for each modification performed following the checkpoint position; restoring the process state to said checkpoint position, whereby said modifications to said user files since the checkpoint position are undone; and resuming execution of the user application process from the checkpoint position.
Claim 11
Dependent Claim 17 words
The method according to claim 8 wherein said checkpointing of the volatile state is automatically invoked periodically.
Claim 12
Dependent Claim 23 words
The method according to claim 8 wherein said checkpointing of the volatile state is invoked by an instruction in said user application process.
Claim 13
Dependent Claim 42 words
The method according to claim 8 wherein said checkpointing at least the portions of at least one user file to be modified is invoked by one or more interception routines which detect file operations that will modify one of said user files.
Claim 14
Dependent Claim 52 words
The method according to claim 8 further comprising the step of specifying one or more user files to be excluded from said checkpoint and wherein said step of checkpointing at least the portions of at least one user file to be modified does not include a checkpoint of the specified excluded files.
Claim 15
Dependent Claim 41 words
The method according to claim 8 wherein said checkpointing of at least a portion of at least one user file to be modified is not performed until an inconsistency between the volatile state and a user file is about to occur.
Claim 16
Dependent Claim 41 words
The method according to claim 8 wherein said checkpointed portion of the user files is an intermediate state, and wherein said step of resuming execution of the user application process will process one or more future inputs from said intermediate state.
Claim 17
Independent Claim 163 words
A method for restoring an initialized state associated with a user application process, said user application process having a process state and performing a processing task based on said initialized state for at least two sets of input files, said method comprising the steps of: (a) initializing said user application process to form an initialized state; (b) specifying one or more input file to be excluded from a checkpoint of said process state; (c) checkpointing portions of said process state which have not been excluded; (d) executing said processing task based on said initialized state and a current set of input files; (e) restoring said user application process to said checkpointed state, said restoration step providing a predefined return value indicating a restoration mode; (f) obtaining a new set of input files to replace said excluded input files if said restoration step returns said predefined return value; and (g) repeating steps (d) through (f) for each set of input files to be processed.
Claim 18
Independent Claim 163 words
A method for restoring an initialized state associated with a user application process, said user application process having a process state and performing a processing task based on said initialized state for at least two sets of input files, said method comprising the steps of: (a) initializing said user application process to form an initialized state; (b) specifying one or more input file to be excluded from a checkpoint of said process state; (c) checkpointing portions of said process state which have not been excluded; (d) executing said processing task based on said initialized state and a current set of input files; (e) restoring said user application process to said checkpointed state, said restoration step providing a predefined return value indicating a restoration mode; (f) obtaining a new set of input files to replace said excluded input files if said restoration step returns said predefined return value; and (g) repeating steps (d) through (f) for each set of input files to be processed.
Claim 19
Dependent Claim 78 words
The method according to claim 15 wherein said process state includes a volatile state and a persistent state and step (c) further comprises the steps of: checkpointing the volatile state; monitoring the persistent state to detect a file operation following the checkpoint position that will modify the persistent state; checkpointing at least the portions of the persistent state to be modified if said monitoring step detects that a modification of the persistent state is about to be performed.

References Cited (Backward Citations)

US4498145A Cited
US4697266A Cited
US4814971A Cited
US4805095A Cited
US4868744A Cited
US4819156A Cited
US5235700A Cited
US5201044A Cited
US5333303A Cited
US5664090A Cited
US5440726A Cited
US5634096A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag