Volatile Memory Segmentation for Warm Boot Data Persistence

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional warm boots in computer systems clear volatile memory, leading to data loss and prolonged recovery times for applications, especially in processing-intensive applications like networking, where downtime can result in significant data loss due to high packet frequencies.

Innovation Solution

Reserving and configuring portions of volatile memory as 'warm memory' that persist data across warm boots, allowing applications to retrieve their data without recreating it after a restart, using specialized APIs for managing meta-data blocks and memory allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional warm boot is performed to restart applications, then system recovery is enabled, but all data in volatile memory is lost and recovery time increases significantly

Engineering Contradiction:
Improvesystem recovery capabilityVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The volatile memory is segmented into two distinct portions: a first portion for general application data and a second portion reserved for persisting critical data across warm boots. This segmentation allows the system to maintain recovery capability while preserving essential data, thereby reducing recovery time without sacrificing reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by reserving and configuring the second memory portion before a warm boot occurs. This pre-prepared memory space ensures that critical data is already positioned for persistence, eliminating the need for time-consuming data migration during the recovery process and significantly reducing overall recovery time.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If all volatile memory is cleared during warm boot for complete system restart, then system reliability is maintained, but application data loss occurs and recovery time increases

Engineering Contradiction:
Improvesystem restart reliabilityVSAvoidapplication data loss
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

Memory is divided into a first portion for general data (cleared during warm boot) and a second portion for persistent data (preserved across warm boots). This segmentation enables the system to maintain reliability through complete restart while preventing loss of critical application data, as the second portion retains information that applications need upon recovery.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different portions of memory are assigned different qualities: the first portion is volatile and cleared during warm boot for complete system restart, while the second portion is configured for data persistence to maintain information across warm boots. This local differentiation allows simultaneous achievement of reliability and data preservation.

Inventive Principle:
Principle #3Local quality

3Loss of information

If data is dumped to non-volatile memory before warm boot to preserve data, then data persistence is achieved, but system cost increases and data loading time adds to recovery time

Engineering Contradiction:
Improvedata persistenceVSAvoidsystem cost
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

Instead of copying data to external non-volatile storage, the system creates a copy within the volatile memory itself by reserving a second portion specifically for data persistence. This internal copying approach maintains data persistence without adding external hardware complexity or cost, while also eliminating the time penalty of reading data back from external storage.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The second memory portion acts as an intermediary between the application data and the warm boot restart process. It serves as a temporary holding area that preserves data during the transition, eliminating the need for external non-volatile memory intermediaries and reducing both system cost and complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Loss of information

If data is reloaded from non-volatile memory after warm boot, then data availability is restored, but recovery time increases by up to 60 seconds

Engineering Contradiction:
Improvedata availabilityVSAvoidrecovery time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system performs preliminary action by pre-reserving and configuring the second memory portion before the warm boot occurs. This ensures that when data needs to be preserved, it is already in the correct location and format, eliminating the need for post-boot data loading and reducing recovery time from potentially 60 seconds to a fraction of that time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system copies data to the second memory portion within the same volatile memory space rather than using external non-volatile storage. This internal copying approach eliminates the lengthy read-back operation required when using external storage, thereby reducing recovery time while maintaining data availability.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9104619B2Persisting data across warm boots
Publication Date: 2015.08.11 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US9104619B2 patent drawing
  • US9104619B2 patent drawing
  • US9104619B2 patent drawing

AI summary

Techniques for persisting data stored in volatile memory across a warm boot. One or more portions (referred to as “warm memory”) of volatile memory of the system can be reserved and configured such that the data stored by these portions is not affected by a warm boot thereby resulting in the data stored being persisted across a warm boot.