Kernel Checkpointing via Character Device Interface
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing checkpointing technologies require modifications to applications, rely on custom operating systems or hardware virtualization, and are dependent on system libraries, making them complex and costly to deploy and manage.
Innovation Solution
A kernel-based checkpointing service that operates transparently across standard operating systems without requiring application modifications or hardware virtualization, using a Loadable Kernel Module (LKM) to capture and restore the state of applications, allowing for seamless migration and fault recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If user-space checkpointing with interception is used, then application state can be captured, but application modifications and system library dependencies are required
Solution Approach 1:
The patent introduces a character device as an intermediary between user-space applications and kernel-space checkpointing services. This device provides a standardized interface that eliminates the need for application modifications while maintaining reliable checkpointing capability through kernel-level operations.
Solution Approach 2:
The patent replaces the mechanical system of user-space interception and library dependency with a kernel-space checkpointing service accessed through character device interfaces. This substitution moves the checkpointing functionality to a more fundamental system level, reducing complexity while maintaining reliability.
2Reliability
If custom operating systems or hardware virtualization are used, then checkpointing can be implemented, but deployment cost and hardware requirements increase
Solution Approach 1:
The patent creates a universal checkpointing solution that works across standard operating systems through character device interfaces. The kernel module can be loaded onto existing commodity hardware and OS platforms, providing checkpointing functionality without requiring custom operating systems or specialized hardware virtualization infrastructure.
Solution Approach 2:
The patent uses kernel-space copying mechanisms to capture application state through the character device interface. This allows checkpointing to be implemented on standard hardware by copying process memory images through kernel facilities, eliminating the need for expensive hardware virtualization or custom OS implementations.
3Reliability
If full checkpointing is performed, then complete application state is preserved, but memory and storage resources are consumed
Solution Approach 1:
The patent implements incremental checkpointing that captures only the necessary portions of application state rather than complete copies. The kernel module can selectively checkpoint process memory images and update only changed regions, reducing memory and storage consumption while maintaining sufficient state restoration accuracy.
Solution Approach 2:
The patent segments the checkpointing process into manageable parts through the character device interface, allowing selective capture and storage of process state components. This segmentation enables efficient memory management by checkpointing only essential application state rather than entire memory images, reducing overall resource consumption.
Data Source
AI summary
A system includes a multi-process application that runs. A multi-process application runs on primary hosts and is checkpointed by a checkpointer comprised of at least one of a kernel-mode checkpointer module and one or more user-space interceptors providing at least one of barrier synchronization, checkpointing thread, resource flushing, and an application virtualization space. Checkpoints may be written to storage and the application restored from said stored checkpoint at a later time. Checkpointing may be incremental using Page Table Entry (PTE) pages and Virtual Memory Areas (VMA) information. Checkpointing is transparent to the application and requires no modification to the application, operating system, networking stack or libraries. In an alternate embodiment the kernel-mode checkpointer is built into the kernel.


