Function Pointer Modification for Backup Data Interception

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing backup solutions face high overhead and complexity when trying to preprocess application data for storage, as they cannot intercept and process data written directly by applications to backup locations without using resource-intensive mechanisms like filter drivers or Virtual File Systems.

Innovation Solution

Modifying function pointers at runtime to redirect application data written during a backup request to a custom function that can preprocess and write data directly to backup media, enabling de-duplication, encryption, and other processing 'in flight' without the need for complex interception methods.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If filter drivers or Virtual File Systems are used to intercept system calls, then application data can be preprocessed for backup, but system overhead and resource consumption increase significantly

Engineering Contradiction:
Improvedata preprocessing capabilityVSAvoidsystem overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a custom function as an intermediary that intercepts application data through function pointer modification. Instead of using complex filter drivers or Virtual File Systems, the custom function acts as a mediator between the application and the backup process, enabling data preprocessing (de-duplication, encryption) while minimizing system overhead by operating at a simpler interception point.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical system of filter drivers and Virtual File Systems with a software-based function pointer modification approach. This substitution eliminates the need for complex kernel-level intercept mechanisms, reducing system overhead while maintaining the ability to preprocess application data for backup.

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

2Productivity

If applications write data directly to backup locations, then backup speed increases, but the backup product cannot preprocess the data

Engineering Contradiction:
Improvebackup speedVSAvoiddata preprocessing capability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements preliminary action by preprocessing application data before it is written to the backup location. The custom function intercepts data at the point of writing, performs de-duplication and encryption operations, and only then writes the processed data to the backup destination. This ensures both high backup speed and comprehensive data preprocessing capability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The custom function serves as an intermediary that sits between the application's direct write operation and the backup location. It allows the application to maintain fast direct writing capability while the intermediary performs necessary preprocessing, thus resolving the contradiction between backup speed and data processing capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If function pointers are modified to redirect data to custom functions, then preprocessing efficiency improves, but system stability may be affected

Engineering Contradiction:
Improvepreprocessing efficiencyVSAvoidsystem stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms to monitor and verify the effects of function pointer modification. The system tracks the modified function pointers and ensures that data is correctly redirected to the custom functions for processing. This feedback loop helps maintain system stability by detecting and correcting any unintended behavior resulting from the pointer modification.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent applies beforehand cushioning by implementing error handling and validation mechanisms before the function pointer modification takes effect. The system prepares backup plans and validation routines in advance, ensuring that if any issues arise from the pointer modification, the system can recover without compromising stability, thus enabling efficient preprocessing while maintaining system reliability.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS11461014B1Modifying function pointers to back up application data
Publication Date: 2022.10.04 EMC IP HLDG CO LLC
  • US11461014B1 patent drawing
  • US11461014B1 patent drawing
  • US11461014B1 patent drawing

AI summary

Techniques to back up data are disclosed. In various embodiments, a function pointer associated with a system call by an application is modified to point to a custom write function. A request to write application data is received at the custom write function. The application data is written to a backup destination based at least in part on a determination that the request is associated with invocation of a backup method of the application.