Selective Memory Dumping for Crash Data Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data processing systems, crashes often result in the loss of critical crash information stored in volatile memory, which cannot be analyzed before rebooting, especially in diskless systems lacking non-volatile memory, requiring data dump methods to transfer this information to another system, but existing methods like kdump may select and dump large amounts of data, including sensitive information, and can destroy file system data.

Innovation Solution

A data dump method that divides memory into a primary and secondary section, where the primary section contains the operating system and dump program code, and the secondary section is out of the operating system's control, allowing the dump program to selectively read and dump file system data from the secondary memory after a crash, using error data for selection and ensuring data integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If the dump program dumps all data in memory after a crash, then complete crash information is obtained, but large amounts of sensitive information are also exposed and the dump size becomes unmanageable

Engineering Contradiction:
Improvecrash information completenessVSAvoiddump data volume
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The memory is divided into a primary memory section (containing OS and dump program code) and a secondary memory section (containing file system data). This segmentation allows the dump program to selectively access only the secondary section for file system data, avoiding dumping of unnecessary data from the primary section while still capturing relevant crash information.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

File system data is extracted from the primary memory section and placed in a separate secondary memory section. The dump program is configured to read only from the secondary section, extracting only the necessary file system data for crash analysis while leaving other data undumped.

Inventive Principle:
Principle #2Taking out (Extraction)

2Loss of information

If the dump program accesses the file system after a crash, then file system data can be dumped, but the crash may have destroyed file system data making selection impossible

Engineering Contradiction:
Improvefile system data recoveryVSAvoiddata integrity
Core Design Contradiction:
Loss of informationVSReliability

Solution Approach 1:

File system data is pre-positioned in the secondary memory section before the crash occurs. This preliminary arrangement ensures that even if a crash destroys file system data structures in the primary memory section, the dump program can still access the pre-positioned file system data in the secondary section for analysis.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If the memory is divided into primary and secondary sections, then selective dumping is enabled, but the memory structure becomes more complex

Engineering Contradiction:
Improveselective data dumpingVSAvoidmemory structure
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The memory is segmented into primary and secondary sections with distinct purposes. The primary section holds OS and dump program code, while the secondary section holds file system data. This clear segmentation simplifies the dump program's operation by providing explicit guidance on which memory region to access, despite the added structural division.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10228993B2Data dump for a memory in a data processing system
Publication Date: 2019.03.12 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10228993B2 patent drawing
  • US10228993B2 patent drawing
  • US10228993B2 patent drawing

AI summary

As the file system of an operating system program might be damaged by a crash, the file system is usually used neither for the selection of data to be dumped from a memory nor for the analysis of the dumped data, and all data contained in one or several areas of the memory are dumped. In order to preserve the integrity of the file system and enable its use after the crash, the memory is divided into a primary and a secondary memory section during a memory setup, file system data are transferred from the primary memory section to the secondary memory section widely out of the control of the operating system program, and a read access of a dump program is directed to the secondary memory section in order to select file system data to be dumped after the crash using error data.