Dynamic Shared Memory Allocation for Multi-OS Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional multi-operating system structures face inefficiencies in shared memory management, leading to inflexible allocation and waste, as sub-operating systems lack active memory awareness and rely on fixed memory allocation sequences.

Innovation Solution

A method that dynamically allocates shared memory by acquiring a data block with a size greater than the data size if a matching idle block is not available, writing the data to this block, and generating a new block from the remaining idle space, improving flexibility and utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If fixed front-to-back memory allocation sequence is used, then memory allocation is simple and deterministic, but memory utilization is inefficient and flexible

Engineering Contradiction:
Improvememory allocation simplicityVSAvoidmemory utilization efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent implements dynamic memory allocation by replacing the fixed front-to-back sequence with a dynamic selection mechanism. The shared memory management application now selects memory blocks based on actual needs rather than following a predetermined order, allowing flexible allocation that adapts to different data sizes and improves overall memory utilization efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the allocation parameter from a fixed sequence number to a size-matching criterion. Instead of allocating memory based on the order of requests, the system now allocates based on the data size requirement, selecting the most suitable idle block that matches the needed capacity, thereby improving memory utilization while maintaining allocation simplicity.

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If sub-operating systems lack active memory awareness, then memory management is simplified, but memory allocation becomes inflexible and causes waste

Engineering Contradiction:
Improvememory management complexityVSAvoidmemory allocation flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements self-service memory management where the shared memory management application actively monitors and manages memory blocks based on data size requirements. The system automatically selects appropriate idle blocks and handles allocation decisions without requiring complex coordination between sub-operating systems, maintaining simplicity while achieving flexible adaptation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces feedback mechanisms where the shared memory management application tracks the status of memory blocks and adjusts allocation decisions based on actual data size needs. This feedback loop allows the system to identify suitable idle blocks and make informed allocation decisions, improving flexibility without significantly increasing overall system complexity.

Inventive Principle:
Principle #23Feedback

3Speed

If memory blocks are allocated without size matching, then allocation speed is faster, but memory waste increases

Engineering Contradiction:
Improveallocation speedVSAvoidmemory waste
Core Design Contradiction:
SpeedVSLoss of substance

Solution Approach 1:

The patent applies partial action by selecting memory blocks that are slightly larger than the minimum required rather than using the smallest possible block. This approach ensures that allocated blocks are sufficient for the data size while avoiding the complexity of precise size matching, achieving a balance between allocation speed and minimizing memory waste through practical approximation.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11281388B2Method for managing a multi-system shared memory, electronic device and non-volatile computer-readable storage medium
Publication Date: 2022.03.22 CLOUDMINDS (SHENZHEN) ROBOTICS SYST CO LTD
  • US11281388B2 patent drawing
  • US11281388B2 patent drawing
  • US11281388B2 patent drawing

AI summary

A method for managing a multi-system shared memory includes: upon receiving a data write instruction for writing data to the shared memory, acquiring a data size of to-be-written data that is to be written to the shared memory; judging whether the shared memory includes a data block that matches the data size and is idle; if the shared memory does not include the data block that matches the data size and is idle, acquiring a first data block that has a memory size greater than the data size and is idle, such that the to-be-written data is written to the first data block; acquiring a remaining idle space of the first data block after the to-be-written data is written to the first data block; and generating a new data block based on the remaining idle space.