Nonvolatile Memory Mapping for File Access Speed

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing file system optimizations assume volatile memory, but nonvolatile main memory systems require new methods to enhance file access performance, as they retain data even when powered off, necessitating innovative memory mapping techniques.

Innovation Solution

A memory mapping method that performs system calls to access file pages stored in a nonvolatile main memory, mapping physical addresses to virtual addresses, and utilizing a swap device to populate necessary file pages in the kernel area, with asynchronous population and updated mapping table information to optimize file access and memory management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If file pages are stored in nonvolatile main memory kernel area, then file access speed is improved, but memory space management complexity increases

Engineering Contradiction:
Improvefile access speedVSAvoidmemory space management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The memory space is segmented into distinct kernel area and user area, with the kernel area specifically designated for storing file pages. This segmentation allows efficient file access while maintaining clear memory management boundaries, resolving the contradiction between speed improvement and management complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A mapping mechanism acts as an intermediary between the physical address of file pages in the kernel area and the virtual address in the user area. This mapping table mediates the access process, enabling fast file access while simplifying memory space management through systematic address translation.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If mapping table is updated frequently, then memory management efficiency is improved, but system overhead increases

Engineering Contradiction:
Improvememory management efficiencyVSAvoidsystem overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The mapping table is pre-configured and updated in advance during memory allocation and file page loading operations. By performing these updates preliminarily rather than reactively during access, the system achieves high memory management efficiency while minimizing real-time overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The mapping table update mechanism incorporates feedback from memory access patterns and system state changes. This feedback-driven approach ensures that updates occur only when necessary, optimizing memory management efficiency while reducing unnecessary system overhead through intelligent timing.

Inventive Principle:
Principle #23Feedback

3Speed

If file pages are populated asynchronously, then memory access responsiveness is improved, but population control complexity increases

Engineering Contradiction:
Improvememory access responsivenessVSAvoidpopulation control complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

File pages are populated asynchronously in advance of actual access needs, with the population process initiated before the pages are required. This preliminary action improves memory access responsiveness by ensuring data is ready when needed, while the background population mechanism manages complexity through proactive rather than reactive operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The population control mechanism dynamically adjusts population timing and priority based on system state and access patterns. This dynamic approach enables asynchronous population that improves responsiveness while managing complexity through adaptive control rather than rigid scheduling.

Inventive Principle:
Principle #15Dynamics

4Quantity of substance

If virtual area is reused, then memory utilization is improved, but allocation accuracy decreases

Engineering Contradiction:
Improvememory utilizationVSAvoidallocation accuracy
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The memory allocation system applies different quality characteristics to different memory regions. The kernel area maintains strict allocation accuracy for file pages, while the user area allows flexible virtual area reuse. This local differentiation enables high memory utilization through reuse while preserving allocation accuracy where it matters most.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes allocation parameters dynamically based on memory state and access patterns. When virtual areas are available, the system adjusts allocation strategies to enable reuse, optimizing memory utilization while maintaining accuracy through parameter adaptation rather than fixed rigid rules.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9501424B2Memory mapping method of nonvolatile memory system and system for providing the memory mapping method
Publication Date: 2016.11.22 SAMSUNG ELECTRONICS CO LTD
  • US9501424B2 patent drawing
  • US9501424B2 patent drawing
  • US9501424B2 patent drawing

AI summary

Provided is a memory mapping method, and particularly provided is a nonvolatile main memory mapping method for managing a nonvolatile main memory. The nonvolatile memory mapping method includes: performing a system call in order to access a file page that is required to operate a process stored in a kernel area of a nonvolatile main memory, wherein both the file page and process are stored in the kernel area of the nonvolatile main memory; and mapping a physical address of the file page to a virtual address of a user area of the nonvolatile main memory.