Kernel Checkpointing via Character Device Interface

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvefault recovery capabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If custom operating systems or hardware virtualization are used, then checkpointing can be implemented, but deployment cost and hardware requirements increase

Engineering Contradiction:
Improvecheckpointing functionalityVSAvoiddeployment cost
Core Design Contradiction:
ReliabilityVSEase of manufacture

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.

Inventive Principle:
Principle #6Universality (Multi-functionality)

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.

Inventive Principle:
Principle #26Copying

3Reliability

If full checkpointing is performed, then complete application state is preserved, but memory and storage resources are consumed

Engineering Contradiction:
Improvestate restoration accuracyVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

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.

Inventive Principle:
Principle #16Partial or excessive action

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.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10628272B1System and method for hybrid kernel- and user-space incremental and full checkpointing
Publication Date: 2020.04.21 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10628272B1 patent drawing
  • US10628272B1 patent drawing
  • US10628272B1 patent drawing

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.