Virtual Machine System Clock Synchronization for Debug Mode Timing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtual computing environments, the use of debug tools can negatively affect performance and timing between processes, leading to issues with interprocess communication due to processing mode differences, such as between debug and non-debug modes.

Innovation Solution

A computer-implemented method is provided to manage system clocks of virtual machines by obtaining a host system clock value, determining a virtual machine system clock value using a system clock adjustment value, and adjusting the virtual machine system clock to synchronize processes across different processing modes, thereby facilitating interprocess communication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If debug tools are used to detect errors and issues in virtual machines, then reliability is improved, but productivity deteriorates due to performance slowdown

Engineering Contradiction:
Improveerror detection capabilityVSAvoidprocess execution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically adjusts the virtual machine system clock based on the processing mode. When debug mode is detected, the clock is slowed down to match the reduced execution speed of debugged processes. When non-debug mode is detected, the clock operates at normal speed. This dynamic adjustment resolves the contradiction by adapting the timing reference to the current operational state, maintaining both reliability (through debug capability) and productivity (through normal-speed operation when debugging is not active).

Inventive Principle:
Principle #15Dynamics

2Reliability

If the system clock is adjusted to match debug mode processing speed, then interprocess communication reliability is improved, but time synchronization accuracy deteriorates

Engineering Contradiction:
Improveinterprocess communication timingVSAvoidsystem clock accuracy
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The patent applies different clock characteristics to different processing contexts. The virtual machine system clock is specifically adjusted only when debug mode is detected, while the host system clock maintains its normal accurate timing. This local quality adjustment ensures that interprocess communication within the debugged virtual machine maintains proper timing relationships, while the overall system clock accuracy is preserved for other operations and when not in debug mode.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically switches between two clock states: a debug mode clock that is slowed down to match debugged process execution, and a normal mode clock that maintains accurate system timing. The transition between these states is triggered by detecting the processing mode, allowing the system to maintain both communication reliability during debugging and time synchronization accuracy during normal operation.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If processes execute at different speeds in debug and non-debug modes, then adaptability is improved, but loss of time increases due to communication timing issues

Engineering Contradiction:
Improveprocessing mode flexibilityVSAvoidinterprocess communication delay
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The virtual machine system clock acts as an intermediary between the host system clock and the guest processes. It translates the host's accurate timing into a debug-appropriate timing scale when needed, allowing processes running at different effective speeds to communicate without timing conflicts. This intermediary clock absorbs the speed difference, preventing communication delays while maintaining the ability to run processes in different modes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10054978B2Controlling system clocks in virtual machines
Publication Date: 2018.08.21 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10054978B2 patent drawing
  • US10054978B2 patent drawing
  • US10054978B2 patent drawing

AI summary

Managing system clocks of virtual machines. A host system clock value of a host system clock of a host system is obtained, and a virtual machine system clock value of a system clock of a virtual machine managed by the host system is determined. The determining of the virtual machine system clock value includes using the host system clock value and a system clock adjustment value. The system clock of the virtual machine is adjusted using the virtual machine system clock value.