Memory Partition Management with Apparent Redundancy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current embedded systems face memory management challenges due to the need for multiple sets of partitions to ensure reliability and update functionality, leading to increased memory requirements that can be unfeasible in power-constrained environments like vehicles, where double memory is often not feasible and memory demands grow with software updates.

Innovation Solution

The system employs a method to manage memory partitions by generating and maintaining multiple partition tables that reference a single set of shared memory extents, allowing software applications to access partitions without distinguishing between redundant and non-redundant copies, thereby reducing memory requirements and simplifying design.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple independent sets of partitions are maintained for reliability and update functionality, then system reliability and update capability are improved, but memory requirements increase to double or more

Engineering Contradiction:
Improvesystem reliabilityVSAvoidmemory requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple partition tables (first partition table and second partition table) to reference a single shared set of memory extents. Instead of maintaining separate duplicate partitions, both partition tables point to the same memory regions, allowing the system to switch between them for reliability and update purposes while using only one physical copy of the data, thus halving the memory requirements.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The shared memory extents serve multiple functions simultaneously: they provide the runtime data for the current software version through one partition table, and store the updated software version data through another partition table. This multi-functionality allows a single memory region to fulfill roles that traditionally required separate dedicated memory areas.

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

2Reliability

If memory is allocated for multiple sets of partitions to ensure reliability, then fault tolerance is improved, but device size and power consumption increase

Engineering Contradiction:
Improvefault toleranceVSAvoiddevice size
Core Design Contradiction:
ReliabilityVSWeight of stationary object

Solution Approach 1:

The patent combines multiple logical partition structures into a single physical memory allocation. By having the first and second partition tables reference the same shared memory extents, the system achieves fault tolerance through logical redundancy (multiple partition tables) without the physical redundancy (multiple memory copies) that would increase device size.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If memory is doubled to accommodate multiple partition sets, then system reliability is improved, but power consumption increases

Engineering Contradiction:
Improvesystem reliabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent merges the storage requirements for multiple software versions into a single shared memory space. Instead of allocating separate memory regions for each version (which would double power consumption), both versions share the same physical memory, reducing the energy required for memory operations while maintaining the ability to switch between versions for reliability.

Inventive Principle:
Principle #5Merging (Combining)

4Adaptability or versatility

If memory requirements increase with each software update to maintain multiple partition sets, then update capability is improved, but memory capacity becomes insufficient for future updates

Engineering Contradiction:
Improveupdate capabilityVSAvoidmemory capacity
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements a dynamic memory management scheme where the partition tables can be reconfigured to point to different memory extents as software updates occur. The shared memory extents can be dynamically allocated and reallocated between different software versions, allowing the system to adapt to growing software requirements without requiring proportional increases in total memory capacity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameters of the partition tables (their structure and references) rather than the underlying memory capacity. By modifying how partition tables reference shared memory extents, the system can accommodate updated software versions with different memory requirements without increasing the total memory allocation, thus preserving capacity for future updates.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20240231665A9Efficient memory partition management with apparent redundancy
Publication Date: 2024.07.11 HARMAN INT IND INC
  • US20240231665A9 patent drawing
  • US20240231665A9 patent drawing
  • US20240231665A9 patent drawing

AI summary

Embodiments of the present disclosure set forth techniques for managing memory partitions in a computing system. The techniques include generating a first entry for a first partition table associated with a first instance of a software application, wherein the first entry is associated with a first memory partition that includes a first memory extent; determining that a first data block referenced by the first memory partition is shared with a second instance of the software application; and generating a second entry for a second partition table associated with a second instance of the software application, wherein the second entry is associated with the first memory partition that includes the first memory extent. As a result, the two partition tables have identical mapping allowing switching between partition tables.