BSDIFF Delta Patching on External Storage Under RAM Limits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The BSDIFF delta image algorithm is not suitable for embedded environments due to limited RAM space and produces patch files that are larger than input files, leading to space constraints in applications where patching needs to occur in place.

Innovation Solution

A method that involves applying delta images and run length encoding to reduce patch file size, redirecting input and output to arbitrary storage, and utilizing memory caches to manage decompressed images, allowing the patching algorithm to work directly on encoded files and overlap storage areas.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If the BSDIFF delta image algorithm is used, then patch file compression is improved, but the patch file size becomes larger than input files

Engineering Contradiction:
Improvepatch file sizeVSAvoidspace efficiency
Core Design Contradiction:
Loss of substanceVSProductivity

Solution Approach 1:

The patent changes the working parameters of the BSDIFF algorithm by implementing it to operate directly on compressed files without full decompression. This modifies the algorithm's execution parameters to work with compressed data streams, thereby producing smaller patch files that are more space-efficient while maintaining the delta imaging functionality.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies compression to the input files before the patching process. By pre-compressing the source and target images, the subsequent delta calculation operates on compressed data, which reduces the intermediate patch file size and eliminates the need to store large uncompressed patches.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If the BSDIFF delta image algorithm is used, then transfer time is reduced, but RAM space requirements increase

Engineering Contradiction:
Improvetransfer timeVSAvoidRAM space
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent pre-compresses the input images before performing delta calculation. This preliminary compression step reduces the size of data that needs to be loaded into RAM during the patching process, thereby reducing RAM space requirements while maintaining fast transfer times through efficient compressed data processing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements the delta imaging process to work in segments on compressed data streams rather than loading entire compressed files into memory. By processing the data in manageable chunks and maintaining compression throughout the process, RAM usage is significantly reduced while transfer efficiency is preserved.

Inventive Principle:
Principle #1Segmentation

3Manufacturing precision

If the patching algorithm works on decompressed images, then patching accuracy is improved, but storage space requirements increase

Engineering Contradiction:
Improvepatching accuracyVSAvoidstorage space
Core Design Contradiction:
Manufacturing precisionVSVolume of stationary object

Solution Approach 1:

The patent fundamentally changes the operational parameter of the patching algorithm from working on decompressed images to working directly on compressed images. This parameter change maintains patching accuracy by ensuring the algorithm operates on the actual compressed data format, while simultaneously reducing storage space requirements by eliminating the need to store large uncompressed image copies.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12124839B2BSIDIFF delta upgrade in external storage
Publication Date: 2024.10.22 HONEYWELL INTERNATIONAL INC
  • US12124839B2 patent drawing
  • US12124839B2 patent drawing
  • US12124839B2 patent drawing

AI summary

A method includes inputting a decompressing compressed image in a computing device. The method also includes applying one or more delta images by a processor to reduce a transfer time for the inputted and decompressed patch image. The method also includes performing one or more calls to a system of memory caches for reads and writes of the decompressed patch image and additional input and output due to a shortage of space in an internal random-access memory (RAM). The method also includes locating arbitrary storage to redirect the decompressed patch image and the additional input and output. The method also includes redirecting the inputted decompressed patch image and the additional input and output to the arbitrary storage.