Memory Management Unit Segmentation for Address Space Compaction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing automatic memory management (AMM) modules in computer systems cause resource conflicts, leading to pauses in application execution and potential malfunctions due to fragmentation and inefficient memory reclamation, especially when dealing with objects of varying sizes.

Innovation Solution

The implementation of a memory management unit (MMU) that divides the logical address space into 'compaction' and 'non-compaction' spaces, allowing large objects to be mapped without physical movement, thereby avoiding the need for compaction and reducing resource competition with the AMM module.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If the AMM module performs compaction to move objects inside memory, then memory fragmentation is reduced, but the application execution is paused and resource conflict increases

Engineering Contradiction:
Improvememory fragmentationVSAvoidapplication execution continuity
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent divides the memory management system into two independent components: the AMM module that manages logical address space and the MMU that handles physical memory mapping. This segmentation allows the AMM module to perform compaction operations on logical addresses without pausing application execution, as the MMU handles physical memory mapping independently through its own compaction mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The MMU acts as an intermediary between the AMM module and physical memory. It translates logical addresses from the AMM module and performs physical compaction independently, allowing the AMM module to focus on logical address management without causing execution pauses. The MMU's translation buffer (TLB) further mediates address translation operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If the AMM module moves large objects during compaction, then memory fragmentation is reduced, but the time required for memory management operations increases linearly with object size

Engineering Contradiction:
Improvememory fragmentationVSAvoidmemory management operation time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent segments the address management into logical address space (AMM module) and physical memory mapping (MMU). The MMU handles physical compaction of large objects independently through hardware-based address translation, which does not require moving the actual object data. This reduces the time required for managing large objects from linear O(n) to constant O(1) time complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces the mechanical system of physically moving large objects during compaction with a virtual address translation system. The MMU uses hardware-based address translation and translation buffers to remap physical addresses without actually moving the object data in memory, dramatically reducing the time required for compaction operations on large objects.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If the AMM module is implemented as a function of the operating system or run-time environment, then memory management is integrated, but resource consumption increases and conflicts with application execution

Engineering Contradiction:
Improvememory management integrationVSAvoidresource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent segments memory management functions between the AMM module (logical address space management) and the MMU (physical memory mapping). The MMU is implemented as a separate hardware component independent of the operating system or run-time environment, reducing resource consumption and execution conflicts while maintaining integration through address translation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The MMU serves as an intermediary hardware component between the AMM module and physical memory, independent of the operating system or run-time environment. This intermediary handles address translation and physical compaction without consuming application execution resources, reducing resource conflicts while maintaining integrated memory management functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11176031B2Automatic memory management using a memory management unit
Publication Date: 2021.11.16 AICAS
  • US11176031B2 patent drawing
  • US11176031B2 patent drawing
  • US11176031B2 patent drawing

AI summary

In a computer system, an automatic memory management module operates by receiving, from a mutator, memory allocation requests for particular objects to be stored in a random-access memory and allocating particular logical addresses within a logical address space to the particular objects. The automatic memory management module distinguishes the particular objects according to at least one criterion and allocates logical addresses from a first sub-space and logical addresses from a second sub-space. A memory management unit maps the allocated logical addresses from the second sub-space to physical memory in the random-access memory. The logical addresses within the first sub-space are compacted in combination with moving corresponding objects in the random-access memory.