DMA Controller Virtual Address Access Schema

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computer systems supporting multiple operating systems, the performance is adversely impacted due to the main operating system's direct control over input and output devices, which limits transparency and efficiency for guest operating systems within virtual machine environments.

Innovation Solution

A method allowing direct memory access units to access virtual address spaces by determining requester identifiers and establishing memory protection schemas, enabling controlled access while preventing unauthorized access and managing errors within the system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the main operating system directly controls direct memory access devices to provide transparent services to guest operating systems, then the guest operating system can interact with input and output devices, but the performance of the main computing environment is severely degraded due to the overhead of memory access protection schema enforcement

Engineering Contradiction:
Improvetransparency of virtual machine environmentVSAvoidperformance of main computing environment
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the memory protection schema enforcement from the main operating system's direct control path. By creating a separate DMA controller that independently enforces memory protection schemas, the system divides the control functionality so that the main OS does not need to directly manage every memory access, thereby reducing overhead while maintaining transparency for guest OS operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a DMA controller as an intermediary between the main operating system and the memory system. This intermediary component handles memory access protection schema enforcement independently, allowing the main OS to provide transparent services to guest OS without directly managing every memory access, thus improving performance while maintaining the required protection and transparency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the main operating system enforces memory access protection schema for every memory request, then system security and integrity are maintained, but the processing overhead significantly reduces system performance

Engineering Contradiction:
Improvesystem security and integrityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-configuring the DMA controller with the memory protection schema before actual memory access operations occur. The protection rules are established in advance, allowing the DMA controller to automatically enforce them during DMA operations without requiring real-time intervention from the main OS, thus maintaining security while reducing processing overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements self-service by enabling the DMA controller to independently enforce memory protection schemas without continuous main OS involvement. The DMA controller autonomously checks and enforces protection rules during memory access operations, maintaining system security and integrity while eliminating the performance penalty of main OS-mediated protection enforcement for each operation.

Inventive Principle:
Principle #25Self-service

3Productivity

If direct memory access units are granted direct access to virtual address spaces, then data transfer efficiency is improved, but unauthorized access and security violations may occur

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidsystem security
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent uses the DMA controller as an intermediary that sits between direct memory access units and virtual address spaces. This intermediary enforces memory protection schemas to prevent unauthorized access while allowing efficient data transfer operations to proceed through the DMA controller without requiring main OS intervention for each transfer, thus balancing security with performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies preliminary action by pre-establishing memory protection schemas in the DMA controller before data transfer operations begin. This preliminary configuration of access rules allows direct memory access units to operate efficiently while the pre-configured protection schema automatically prevents unauthorized access, resolving the contradiction between transfer efficiency and security.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP1708090B1Method and apparatus for direct input and output in a virtual machine environment
Publication Date: 2010.03.03 HEWLETT PACKARD DEVELOPMENT COMPANY LP
  • EP1708090B1 patent drawingFigure 1
  • EP1708090B1 patent drawingFigure 2
  • EP1708090B1 patent drawingFigure 3

AI summary

Method and apparatus for allowing a direct memory access unit (225) to have access to a virtual address space is accomplished by receiving a request for memory access (5) from the direct memory access device (225); determining a device identifier (10) according to the received request for memory access; determining a memory protection schema (15) according to the determined device identifier; and granting the direct memory access unit access to memory (20) in accordance with the determined memory protection schema.