Memory Management Bitmap Sub-block Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory fragmentation in computing systems leads to inefficient use of memory space, resulting in lower computing efficiency as substantial portions of memory remain unused despite being divided into many small blocks.

Innovation Solution

Implementing a memory management system that partitions memory into larger blocks and uses sub-blocks with a bit map to identify freeable data structures, delaying de-allocation until a threshold is reached, and coalescing memory by marking and freeing data structures with a freeable property to reduce fragmentation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If memory is allocated and de-allocated frequently on a block basis, then memory can be divided into many small blocks to satisfy allocation requests, but memory fragmentation occurs and substantial portions of memory space remain unused

Engineering Contradiction:
Improveability to satisfy allocation requestsVSAvoidunused memory space
Core Design Contradiction:
Adaptability or versatilityVSLoss of substance

Solution Approach 1:

The patent divides memory into blocks and further segments each block into multiple data structures. This segmentation allows the system to allocate and de-allocate individual data structures within blocks rather than entire blocks, reducing memory fragmentation while maintaining the ability to satisfy allocation requests of varying sizes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple data structures within a single memory block and uses a unified bitmap to track allocation status. This merging approach allows contiguous free data structures to be coalesced into larger allocatable units, preventing memory fragmentation and improving memory utilization while maintaining adaptability to different allocation requests.

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If memory de-allocation is performed immediately when a process finishes using memory, then memory availability is improved, but overhead increases due to frequent consolidation operations

Engineering Contradiction:
Improvememory availabilityVSAvoidconsolidation overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent performs preliminary actions by maintaining a bitmap that tracks the allocation status of each data structure within a block. When data structures are de-allocated, their status is immediately updated in the bitmap, preparing the information for potential future allocation without requiring immediate consolidation operations, thus reducing overhead while maintaining availability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The bitmap structure enables self-service by automatically tracking which data structures are free and contiguous. When allocation requests come in, the system can self-determine allocatable regions by examining the bitmap without requiring complex consolidation algorithms, reducing computational overhead while ensuring memory availability.

Inventive Principle:
Principle #25Self-service

3Loss of substance

If contiguous blocks of available memory are joined to form larger blocks, then memory fragmentation is reduced, but device complexity increases due to consolidation operations

Engineering Contradiction:
Improvememory fragmentationVSAvoidconsolidation complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent uses a bitmap as a simplified copy or representation of the actual memory allocation state. Instead of performing complex physical consolidation operations to join contiguous blocks, the system maintains a bitmap copy that reflects free and allocated regions, allowing logical consolidation without the complexity of physical memory reorganization.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent changes the parameter representation from physical memory block addresses to bitmap indices. This parameter transformation simplifies the consolidation process by allowing the system to identify and merge contiguous free regions through simple bitmap operations rather than complex address calculations and physical memory management operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9311227B2Memory management
Publication Date: 2016.04.12 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9311227B2 patent drawing
  • US9311227B2 patent drawing
  • US9311227B2 patent drawing

AI summary

Methods and devices are provided for memory management. One embodiment includes creating a memory control block including a number of sub-blocks, where the number of sub-blocks are capable of storing at least one data structure in a memory device. The method also includes scanning the control block for a free-able data structure having a defined data structure property, marking the free-able data structure as free-able in a bit map, and de-allocating the free-able data structure.