Runtime Virtual Machine Monitor Memory Devirtualization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional virtual machine monitors (VMMs) incur unnecessary overhead by virtualizing hardware from bootup to shutdown, even when only a single operating system is running, leading to slowed performance and increased CPU bandwidth loss due to constant trapping and simulation of privileged instructions.

Innovation Solution

Implementing runtime virtualization and devirtualization of memory, where the VMM commences and ceases memory virtualization dynamically during execution, allowing direct management of memory translations and reducing unnecessary overhead by switching between virtual-to-physical and physical-to-machine mappings as needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If memory virtualization is maintained from bootup to shutdown, then multiple operating systems can share memory resources, but system performance deteriorates due to constant translation overhead

Engineering Contradiction:
Improvememory sharing capabilityVSAvoidsystem performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent applies dynamics by making the memory virtualization state changeable rather than fixed. The system dynamically transitions between virtualized and non-virtualized states based on runtime conditions. When only one OS is running, the VMM devirtualizes memory to eliminate translation overhead. When multiple OSes need memory sharing, virtualization is re-enabled. This dynamic adaptation resolves the contradiction between versatility and performance.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the virtualization parameter (P→M mapping) from a constant state to a variable state. By modifying the virtualization parameter based on the number of active OS instances, the system optimizes performance. When unnecessary virtualization is detected, the P→M mapping parameter is adjusted to bypass translation, directly improving system productivity while maintaining the capability for memory sharing when needed.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If physical-to-machine translation is constantly applied, then VMM control over memory is maintained, but CPU bandwidth is lost to software overhead

Engineering Contradiction:
ImproveVMM controlVSAvoidCPU bandwidth
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies partial action by selectively applying physical-to-machine translation only when necessary. Instead of constantly enforcing P→M mapping, the VMM detects when only one OS is running and partially disables the translation mechanism. This partial application of virtualization maintains sufficient control for security and management while dramatically reducing CPU bandwidth consumption by eliminating unnecessary translation operations.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system implements periodic checks to determine whether memory virtualization is currently needed. The VMM periodically evaluates the runtime state (number of active OS instances) and adjusts the translation mechanism accordingly. This periodic action ensures VMM control is maintained when needed while allowing CPU bandwidth to be freed when virtualization is unnecessary, resolving the contradiction between reliability and energy use.

Inventive Principle:
Principle #19Periodic action

3Speed

If direct virtual-to-machine mapping is used, then TLB performance is improved, but overhead is incurred even when virtualization is not necessary

Engineering Contradiction:
ImproveTLB translation speedVSAvoidunnecessary overhead time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent extracts the unnecessary virtualization layer from the memory management path when only one OS is running. By taking out the P→M translation step from the address translation chain, the system eliminates the associated overhead. The VMM detects when direct V→P mapping suffices and removes the intermediate virtualization translation, thereby reducing loss of time while maintaining TLB performance benefits when full virtualization is required.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS7805723B2Runtime virtualization and devirtualization of memory by a virtual machine monitor
Publication Date: 2010.09.28 HEWLETT PACKARD ENTERPRISE DEV LP
  • US7805723B2 patent drawing
  • US7805723B2 patent drawing
  • US7805723B2 patent drawing

AI summary

A virtual machine monitor can be used to commence virtualization of computer memory at runtime. The virtual machine monitor can also be used to devirtualize computer memory at runtime.