Virtual Address Reconstruction via Memory Transmission Interception

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computing systems, the challenge arises when multiple software applications concurrently access the same memory address, leading to malfunctions and crashes, as existing memory management technologies struggle to effectively translate virtual addresses back to their original physical addresses, especially in multi-operating system environments.

Innovation Solution

A method and system that intercepts memory transmissions, identifies page table address calls, and retrieves the virtual address from these calls by utilizing the least significant bits of the physical address, along with knowledge of page table steps and translation table base registers, to reconstruct the original virtual address.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virtual addresses are used to allow multiple applications to access memory concurrently, then system reliability is improved, but the complexity of address translation and retrieval deteriorates

Engineering Contradiction:
Improvesystem stabilityVSAvoidaddress translation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by intercepting and storing page table address calls in advance. The monitor captures the chronological sequence of page table accesses and stores them for later analysis, enabling virtual address retrieval without adding complexity to the real-time translation process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A monitor acts as an intermediary between the memory system and the analysis tool. It intercepts transmissions to and from memory, identifies page table address calls, and provides the necessary information for virtual address retrieval without interfering with the normal memory translation operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If page table address calls are intercepted and analyzed to retrieve virtual addresses, then measurement precision is improved, but the loss of time due to processing intercepted data deteriorates

Engineering Contradiction:
Improvevirtual address retrieval accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The monitor continuously intercepts and stores page table address calls in chronological order during system operation. This preliminary capture of data eliminates the need for real-time processing when virtual address retrieval is needed, as all necessary information is already recorded and organized.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses the existing page table address calls that are already being generated during normal operation. By analyzing these naturally occurring calls rather than generating separate probe calls, the system retrieves virtual addresses without adding extra processing time to the memory access path.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If the system supports multiple operating systems with separate translation tables, then adaptability is improved, but the complexity of managing multiple translation table base registers deteriorates

Engineering Contradiction:
Improvemulti-OS supportVSAvoidtranslation table management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The monitor is designed with universal functionality that works across multiple operating systems. It intercepts page table address calls regardless of which OS is active and can retrieve virtual addresses using the appropriate translation table base register for the current context, making the system adaptable to different OS environments without requiring separate mechanisms for each.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system uses feedback from the intercepted page table address calls to determine which translation table base register to use. By analyzing the chronological sequence of calls and the current system state, the monitor automatically selects the correct translation table context, simplifying the management of multiple OS translation tables.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10482031B1Method and system for reconstructing virtual address from physical memory
Publication Date: 2019.11.19 CADENCE DESIGN SYST INC
  • US10482031B1 patent drawing
  • US10482031B1 patent drawing
  • US10482031B1 patent drawing

AI summary

A method for retrieving a virtual address from a physical address accesses in a memory of a computing system, to which that virtual address was previously mapped to, may include: using a monitor to intercept transmissions to and from a memory of a computing system; using a processor: identifying in the intercepted transmissions page table address calls relating to mapping of a virtual address to a physical address; and retrieving the virtual address from the identified page table address calls.