Patent ID: 8880473

Claim:
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.