IP Library Granted Patent US 7,376,860
Granted Patent B2
US 7,376,860 · App. 11/013,642 · Granted May 20, 2008

Checkpoint/resume/restart safe methods in a data processing system to establish, to restore and to release shared memory regions

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,376,860
App. No.
11/013,642
Granted
May 20, 2008
Kind
B2
Abstract

A method is provided in which checkpointing operations are carried out in data processing systems running multiple processes which employ shared memory in a manner which preserves data coherence and integrity but which places no timing restrictions or constraints which require coordination of checkpointing operations. Data structures within local process memory and within shared memory provide the checkpoint operation with application level information concerning shared memory resources specific to at least two processes being checkpointed. Methods are provided for establishing, restoring and releasing shared memory regions that are accessed by multiple cooperating processes.

Claims (19)

1. A method for supporting system level checkpoint operations in a data processing system by providing data structures within local process memory and within shared memory which provide application level handlers invoked by system level checkpoint operations with application level information concerning shared memory resources specific to at least two processes being checkpointed.

2. The method of claim 1 in which an application registers handlers for checkpointing which are invoked at the system level.

3. The method of claim 1 in which there are a plurality of processes that are checkpointed.

4. The method of claim 1 in which said data structure provides support for establishing shared memory regions for said processes.

5. The method of claim 1 in which said data structure provides support for restoring shared memory regions for said processes.

6. The method of claim 1 in which said data structure provides support for releasing shared memory regions for said processes.

7. The method of claim 1 in which said data structure includes indicia of whether or not a process is the leader of a set of cooperating processes.

8. The method of claim 1 in which said data structure includes lock information for temporarily blocking checkpoint and restart operations for the process.

9. The method of claim 1 in which said data structure includes indicia which indicates the number of processes that have registered the shared memory checkpoint and restart handlers that participate in checkpoint synchronization.

10. The method of claim 1 in which said data structure includes an indicia which indicates how many processes have run the checkpoint handlers after the checkpoint is requested.

11. The method of claim 1 in which said data structure includes an indicia which indicates how many processes have run the restart handlers after the restart is requested.

12. The method of claim 1 in which said data structure includes a checkpoint register lock.

13. The method of claim 1 in which said data structure includes an indicia which indicates that a node leader has resigned.

14. A method for establishing a shared memory region having checkpoint capabilities, said method comprising the steps of:

creating a shared memory region for at least two processes;

initializing control data structures within said shared memory region, including initializing a checkpoint register count to indicate that said processes are capable of accessing shared memory; and

registering at least one checkpoint handler and at least one restart handler.

15. The method of claim 14 further including the step by a node leader of sending the result of said initializing step, through a non-shared memory communication system that is established among all of the processes, to all other processes.

16. The method of claim 15 further including a step in which non-node leader processes wait for the result of said initializing step before performing establishing their own shared memory data structures.

Assignments (3)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: FACEBOOK, INC.
Reel/Frame 027991/0576 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2005
From: JIA, BIN; LAW, ELLICK C.; TREUMANN, RICHARD R.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 015708/0836 →