Memory Mapping System Transposes Fragmented Physical Memory Patterns
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modern computer systems face inefficiencies due to fragmented physical memory spaces caused by unpopulated memory slots in devices, leading to numerous gaps and small contiguous memory segments, which restrict the use of larger page sizes and hinder optimal memory utilization.
Innovation Solution
A system that groups, sorts, and partitions memory patterns in the physical memory space based on predefined criteria, including the size and arrangement of contiguous memory address ranges, and then transposes the partitioned virtual memory space to create a system memory space with larger contiguous segments, allowing for more efficient memory usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If memory slots are not fully populated in devices, then cost is reduced and device complexity is lowered, but the physical memory space becomes fragmented with gaps and holes
Solution Approach 1:
The patent segments the physical memory space into distinct regions based on the actual populated memory slots, creating a mapped memory space that separates contiguous memory segments from gaps. This segmentation allows the system to recognize and work with the fragmented structure rather than treating it as a single continuous space.
Solution Approach 2:
The patent introduces a memory mapping mechanism as an intermediary layer between the physical memory slots and the operating system. This mapper translates logical memory addresses to physical memory locations, enabling the system to present a continuous memory space to software even when physical memory is fragmented.
2Productivity
If the physical memory space contains many gaps and small contiguous segments, then memory utilization is reduced, but the system can still function with limited physical memory
Solution Approach 1:
The patent transforms the one-dimensional physical memory layout into a two-dimensional mapped memory space, where logical continuity is achieved through address translation. This dimensional transformation allows small physical segments to be arranged logically as large contiguous blocks, enabling better memory utilization without changing physical hardware.
Solution Approach 2:
The patent changes the addressing parameters by implementing a mapping scheme that translates logical addresses to physical addresses. This parameter transformation allows the system to access physical memory segments in a different order and pattern, effectively creating larger contiguous logical memory regions from smaller physical segments.
3Productivity
If larger page sizes are used, then memory access efficiency is improved, but the requirement for contiguous memory segments increases
Solution Approach 1:
The patent performs preliminary memory mapping and segmentation before the operating system attempts to allocate memory pages. By pre-organizing the physical memory segments and creating the mapped memory space in advance, the system prepares the memory structure to accommodate larger page sizes without requiring complex runtime adjustments or memory compaction operations.
Data Source
AI summary
A system for mapping memory of a computer system includes a sorter, a partitioner, and a mapper. The sorter sorts a physical memory space to obtain a sorted virtual memory space, where the physical memory space includes a plurality of memory patterns, wherein each of the plurality of memory patterns is associated with a physical device and includes at least one memory block, wherein the at least one memory block is contiguous and addressable, and the plurality of memory patterns are arranged based on a predefined number of occurrences of each memory pattern, size of contiguous memory address ranges in each of the plurality of memory patterns, size of contiguous memory address ranges in each of the plurality of memory patterns, and arrangement of contiguous address ranges in each of the plurality of memory patterns. The partitioner partitions the plurality of memory patterns in the sorted memory space based on a partition size to obtain a partitioned virtual memory space, and a mapper transposes the partitioned virtual memory space to obtain a system memory space used by the computer system.


