ACPI Table Inconsistency Detection in Virtualized Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Virtualized computer systems face challenges in detecting substantive inconsistencies in Advanced Configuration and Power Interface (ACPI) tables between host and guest firmware without triggering false alarms due to compiler version differences or temporary variable name variations.
Innovation Solution
A system and method that decompiles binaries representing ACPI tables to compare strings of symbols, generating a signal for inconsistency only if differences are unrelated to compiler versions or temporary variable names, using a system table consistency monitor, reverse compilers, and a difference tool to ensure accurate detection.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If binary comparison of ACPI tables is performed to detect inconsistencies, then detection capability is improved, but false alarms increase due to compiler version differences and temporary variable name variations
Solution Approach 1:
The patent segments the binary comparison process into multiple stages: decompiling binaries to symbolic representations, normalizing the symbolic representations by resolving compiler version differences and temporary variable names, and then performing comparison. This segmentation allows the system to distinguish between substantive inconsistencies and superficial differences caused by compilation variations.
Solution Approach 2:
The patent introduces an intermediary normalization layer between the raw binary comparison and the final inconsistency detection. This intermediary process uses reverse compilers and symbol resolution mechanisms to transform binary representations into normalized symbolic forms, filtering out false differences before final comparison.
2Measurement precision
If comprehensive comparison of ACPI tables is performed, then detection thoroughness is improved, but system complexity increases
Solution Approach 1:
The patent creates a universal comparison framework that can handle multiple types of inconsistencies in ACPI tables through a single unified process. The same decompilation, normalization, and comparison mechanisms work for various inconsistency types (device properties, checksums, etc.), reducing the need for multiple specialized detection systems.
Solution Approach 2:
The patent uses reverse compilers to create symbolic copies of the binary ACPI tables, allowing comparison to be performed on the symbolic representations rather than the original binaries. This copying approach simplifies the comparison process by working with more manageable symbolic data structures.
Data Source
AI summary
A system and methods are disclosed for detecting inconsistent instances of a system table in a virtualized computer system. In accordance with one embodiment, a processing device decompiles a first binary representing a first instance of a system table, to obtain a first string of symbols. The processing device also decompiles a second binary representing a second instance of the system table that is associated with guest firmware of a first virtual machine, to obtain a second string of symbols. When there is a difference between the first string of symbols and the second string of symbols and the difference is unrelated to a compiler version and a temporary variable name, a signal indicating an inconsistency between the first instance and the second instance is generated.


