Dynamic Memory Zone Relocation for Code Update Safety

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing electronic devices employ inflexible memory partitioning, which complicates code updates and does not optimize data storage, as update agents must operate within predefined static zones to avoid corrupting other code components.

Innovation Solution

Implementing dynamically updateable and moveable memory zones through a management system that includes an update manager, flash manager, and database to relocate and manage memory blocks, allowing updates to expand or contract code components without predefining additional space, and maintaining contiguous storage of elements using an address translation table.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If static memory zones are used to prevent corruption during updates, then code component safety is improved, but memory management flexibility and storage optimization deteriorate

Engineering Contradiction:
Improvecode component safetyVSAvoidmemory management flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic memory zones that can be relocated and resized during runtime, replacing the static partitioning scheme. The update manager dynamically allocates temporary zones for code updates and moves code components between zones as needed, enabling flexible memory management while maintaining safety through controlled access and validation mechanisms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces an update manager as an intermediary layer between the code components and the memory system. This manager coordinates all memory access operations, validates update operations, and manages the relocation of code components between different memory zones, thereby preventing corruption while enabling flexible memory usage.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If static memory zones are used to isolate code components, then corruption prevention is improved, but update complexity and storage optimization deteriorate

Engineering Contradiction:
Improvecorruption preventionVSAvoidupdate complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a universal memory management system where a single update manager handles all code component updates across different zones. This manager provides multi-functional capabilities including allocation, relocation, validation, and execution of updates, simplifying the overall update process compared to managing multiple isolated static zones.

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

Solution Approach 2:

The system dynamically adjusts memory zone configurations during updates, allowing code components to be moved to appropriate zones based on their update status and execution requirements. This dynamic approach reduces update complexity by eliminating the need for pre-configured static zone assignments for each component.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If additional space is preallocated for code expansion, then update capability is improved, but storage efficiency and memory optimization deteriorate

Engineering Contradiction:
Improveupdate capabilityVSAvoidstorage efficiency
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic memory allocation where code components can expand into available memory space as needed during runtime. The update manager monitors memory usage and dynamically allocates additional space to growing code components, eliminating the need for preallocation while maintaining update capability and optimizing storage utilization.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the memory allocation parameters from fixed static values to dynamic values that adjust based on actual code component size requirements. This allows the memory system to adapt to varying update needs without committing excessive storage space in advance, thereby improving both update capability and storage efficiency.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7681009B2Dynamically updateable and moveable memory zones
Publication Date: 2010.03.16 GOOGLE TECHNOLOGY HOLDINGS LLC
  • US7681009B2 patent drawing
  • US7681009B2 patent drawing
  • US7681009B2 patent drawing

AI summary

A command is received to perform an update operation on a first component of code contained in a plurality of memory blocks in a memory. It is determined whether or not the update operation requires additional space, beyond that which is already allocated to the first component, to complete the operation. A first memory block is located on which to perform the operation if the update operation requires additional space. A second memory block is located, through utilization of a database, to perform the operation if the update operation does not require additional space. The update operation is performed.