Two-Level Paging Mechanism for Memory Compaction and Wear Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Electronic devices with limited volatile memory face challenges in efficiently transferring data from volatile to non-volatile memory to allocate memory resources effectively among competing applications, while minimizing wear on non-volatile storage.

Innovation Solution

A two-level paging mechanism is employed, where a first level compacts pages from reclaimable memory locations into a single container, and a second level uses optimal I/O operations to transfer these pages to non-volatile memory, allowing on-demand retrieval and reducing wear through minimal write operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is transferred from volatile memory to non-volatile memory to free up volatile memory space, then memory availability for other applications is improved, but wear on non-volatile storage increases

Engineering Contradiction:
Improvememory availabilityVSAvoidstorage wear
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent merges multiple scattered pages from different memory locations into a single contiguous container in volatile memory before transferring to non-volatile storage. This consolidation reduces the number of separate I/O operations needed, thereby reducing wear on non-volatile storage while freeing up volatile memory space.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary actions by compacting and organizing pages into a container before the actual transfer to non-volatile memory. This pre-processing step optimizes the transfer operation, reducing the frequency and impact of write operations on non-volatile storage.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If individual pages are transferred from volatile to non-volatile memory, then memory reclamation is achieved, but I/O operation overhead increases

Engineering Contradiction:
Improvememory reclamationVSAvoidI/O operation overhead
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

Multiple individual page transfer operations are merged into a single bulk transfer operation. By consolidating pages into a container first, the system reduces I/O overhead from multiple separate operations to one unified operation, achieving memory reclamation with reduced complexity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The container serves as an intermediary structure between volatile memory pages and non-volatile storage. This intermediate container allows efficient batch processing and simplifies the transfer mechanism, reducing I/O overhead compared to direct individual page transfers.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If volatile memory is used for fast access, then application performance is improved, but memory capacity is limited

Engineering Contradiction:
Improvememory access speedVSAvoidmemory capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The memory system is segmented into two distinct layers: volatile memory for fast access to active data, and non-volatile memory for capacity extension. The paging mechanism intelligently segments data between these layers, maintaining fast access performance for frequently used data while extending total capacity through non-volatile storage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extends the memory hierarchy by adding a spatial dimension - using non-volatile memory as an extended address space. The two-level paging mechanism transparently manages this extended dimension, allowing applications to access data in non-volatile memory with the same interface as volatile memory, effectively increasing capacity without sacrificing access speed for active data.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9195581B2Techniques for moving data between memory types
Publication Date: 2015.11.24 APPLE INC
  • US9195581B2 patent drawing
  • US9195581B2 patent drawing
  • US9195581B2 patent drawing

AI summary

A two-level paging mechanism. The first level gathers data from reclaimable memory locations for a process and compacts the data into a single container. The second level sends the compact container's contents to a swap file and may use optimal I/O operations to the target memory device. On-demand paging is made possible by having a first pager locate the requested data in the compact container and then having a second pager retrieve the corresponding data from the swap file.