Virtual Machine Trace Module Integrating System Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Diagnosing problems in virtual machines is challenging due to the abstraction layer between the underlying system and application code, which complicates debugging and requires de-abstracting issues to identify root causes, often relying on custom debug modules that may incur performance degradation.
Innovation Solution
A method that involves opening a global data dictionary on a virtual machine, allocating program objects, initializing a system trace module, collecting and consolidating additional class data, and triggering the trace module in response to events to integrate low-level information with abstracted data for efficient troubleshooting.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If virtual machines use abstraction layers to isolate system internals from application code, then developer productivity and code portability improve, but diagnostic capability deteriorates
Solution Approach 1:
The patent introduces a trace module as an intermediary component that operates within the virtual machine environment to capture system-level data. This mediator bridges the gap between the abstracted application layer and the underlying system layer, enabling diagnostics without breaking the abstraction barrier. The trace module collects data from native backend abstractions and makes it available to developers through standardized interfaces.
Solution Approach 2:
The patent segments the diagnostic data collection process into distinct components: the trace module that collects raw system data, the data dictionary that stores and organizes the data, and the consolidation mechanism that integrates system data with abstracted object data. This segmentation allows each component to operate independently while maintaining the overall diagnostic capability.
2Difficulty of detecting and measuring
If custom debug modules are used to diagnose virtual machine issues, then diagnostic capability improves, but system performance deteriorates
Solution Approach 1:
The patent implements preliminary action by pre-configuring the trace module and data dictionary structure before diagnostic needs arise. The system establishes the tracing infrastructure in advance, with predefined data collection points and storage structures, so that when diagnostics are needed, data is already captured and organized without requiring performance-intensive processing during the diagnostic event.
Solution Approach 2:
The patent creates a copy of the relevant system state data through the trace module without modifying the original system operations. The data dictionary stores copies of object data and system data, allowing diagnostic analysis to proceed on these copies while the virtual machine continues normal operations with minimal performance impact.
3Measurement precision
If comprehensive system data is collected for diagnostics, then diagnostic accuracy improves, but data complexity increases
Solution Approach 1:
The patent merges two previously separate data sources into a unified structure: abstracted object data from the application layer and native system data from the backend. The data dictionary consolidation mechanism combines these data types into a single coherent view, allowing developers to access both levels of abstraction simultaneously without managing separate data systems, thereby reducing overall complexity while improving diagnostic accuracy.
Solution Approach 2:
The data dictionary is designed as a universal data structure that can store multiple types of data (abstracted object data and native system data) through a common interface. This multi-functional data structure handles diverse data formats and sources uniformly, simplifying the complexity of managing comprehensive diagnostic data while maintaining high diagnostic accuracy.
Data Source
AI summary
A computer-implemented method includes opening, by a computer device, a global data dictionary on a virtual machine running on the computer device; running, by the computer device, a system defined class on the virtual machine; allocating, by the computer device, program objects that relate to the system defined class from an operating system onto the virtual machine; initializing, by the computer device, a system trace module on the virtual machine; collecting and storing in the global data dictionary, by the computer device, additional class data that was not originally abstracted, the additional class data being references to the allocated program objects; triggering, by the computer device, the system trace module in response to a trace event; identifying, by the computer device, particular ones of the program objects that relate to the trace event; and consolidating, by the computer device, the additional class data that corresponds to the particular ones of the program objects with abstracted object data that corresponds to the particular ones of the program objects, the additional class data being different from the abstracted object data.


