Method and system for providing storage checkpointing to a group of independent computer applications
First Claim
Patent Images
1. A system for storage checkpointing to a group of independent computer applications, the system comprising:
- a storage disk to store files;
a storage access interface to access the storage disk; and
a computer comprising;
the group of independent computer applications running on the computer accessing files stored on the storage disk;
a file system to access the files stored on the storage disk;
at least one device driver to be called by the file system;
at least one buffer structured to buffer first data written to the storage disk and to buffer second data read from the storage disk;
one or more memory locations configured to store said group of independent applications executing on a host with a host operating system, and configured to store one or more barrier-synchronization barriers for said group of independent applications; and
one or more pre-loaded interceptors configured to intercept calls to the host operating system and shared libraries by said group of independent applications, and configured to install interceptors for file operations, wherein said interceptors for file operations are configured to first store a record of a file operation in a data structure, call the corresponding file operation, and remove said stored record upon completion of the file operation;
wherein the system is configured to perform storage checkpointing to the group of independent computer applications by claiming the barrier-synchronization barrier, and performing at least one of;
waiting for processes and threads from said independent computer applications to enter said barrier, flushing storage buffers, taking memory checkpoints, taking storage checkpoints, and releasing said barrier;
wherein storage checkpointing is disabled prior to said storing of a record of a file operation and re-enable prior to calling said corresponding file operation.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method for storage checkpointing to a group of independent computer applications. The system has a storage disk that stores files; a storage access interface to access the storage disk; and a computer. The computer runs the group of independent computer applications and utilizes the files stored on the storage disk. A file system on the server accesses the files stored on the storage disk. An operating system and at least one device driver can be called by the file system, and at least one buffer buffers first data written to the storage disk and second data read from the storage disk.
-
Citations
21 Claims
-
1. A system for storage checkpointing to a group of independent computer applications, the system comprising:
-
a storage disk to store files; a storage access interface to access the storage disk; and a computer comprising; the group of independent computer applications running on the computer accessing files stored on the storage disk; a file system to access the files stored on the storage disk; at least one device driver to be called by the file system; at least one buffer structured to buffer first data written to the storage disk and to buffer second data read from the storage disk; one or more memory locations configured to store said group of independent applications executing on a host with a host operating system, and configured to store one or more barrier-synchronization barriers for said group of independent applications; and one or more pre-loaded interceptors configured to intercept calls to the host operating system and shared libraries by said group of independent applications, and configured to install interceptors for file operations, wherein said interceptors for file operations are configured to first store a record of a file operation in a data structure, call the corresponding file operation, and remove said stored record upon completion of the file operation; wherein the system is configured to perform storage checkpointing to the group of independent computer applications by claiming the barrier-synchronization barrier, and performing at least one of; waiting for processes and threads from said independent computer applications to enter said barrier, flushing storage buffers, taking memory checkpoints, taking storage checkpoints, and releasing said barrier; wherein storage checkpointing is disabled prior to said storing of a record of a file operation and re-enable prior to calling said corresponding file operation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable storage medium comprising instructions for storage checkpointing to a group of independent computer applications, the instructions for:
-
storing files on a storage disk; accessing the storage disk via a storage access interface; running the group of independent computer applications on a computer, wherein the group of independent computer applications utilizes the files stored on the storage disk; accessing the files stored on the storage disk via a file system; calling at least one device driver via the file system; buffering first data written to the storage disk and second data read from the storage disk in at least one buffer; configuring one or more memory locations to store said group of independent applications executing on a host with a host operating system, and configuring one or more additional memory locations to store one or more barrier-synchronization barriers for said group of independent applications; and pre-loading interceptors configured to intercept calls to the host operating system and shared libraries by said group of independent applications, and installing interceptors for file operations, wherein said interceptors for file operations are configured to first store a record of a file operation in a data structure, call the corresponding file operation, and remove said stored record upon completion of the file operation; wherein the instructions on the computer readable storage medium are configured to perform storage checkpointing to the group of independent computer applications by claiming the barrier-synchronization barrier, and performing at least one of; waiting for processes and threads from said independent computer applications to enter said barrier, flushing storage buffers, taking memory checkpoints, taking storage checkpoints, and releasing said barrier; wherein storage checkpointing is disabled prior to said storing of a record of a file operation and re-enabled prior to calling said corresponding file operation. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A method for storage checkpointing to a group of independent computer applications, the method comprising:
-
storing files on a storage disk; accessing the storage disk via a storage access interface; running the group of independent computer applications on a computer, wherein the group of independent computer applications utilizes the files stored on the storage disk; accessing the files stored on the storage disk via a file system on the computer; calling at least one device driver via the file system; buffering first data written to the storage disk and second data read from the storage disk in at least one buffer; configuring one or more memory locations to store said group of independent applications executing on a host with a host operating system, and configuring one or more additional memory locations to store one or more barrier-synchronization barriers for said group of independent applications; and pre-loading interceptors configured to intercept calls to the host operating system and shared libraries by said group of independent applications, and installing interceptors for file operations, wherein said interceptors for file operations are configured to first store a record of a file operation in a data structure, call the corresponding file operation, and remove said stored record upon completion of the file operation; wherein storage checkpointing to a group of independent computer applications is comprised of claiming the barrier-synchronization barrier, and performing at least one of; waiting for processes and threads from said independent computer applications to enter said barrier, flushing storage buffers, taking memory checkpoints, taking storage checkpoints, and releasing said barrier; wherein storage checkpointing is disabled prior to said storing of a record of a file operation and re-enabled prior to calling said corresponding file operation. - View Dependent Claims (17, 18, 19, 20, 21)
-
Specification