Hypervisor Dynamic ACPI Table Population

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized computer systems, existing technologies require special firmware within the virtual machine to populate Advanced Configuration and Power Interface (ACPI) tables, which are static and must remain fixed, limiting flexibility and efficiency.

Innovation Solution

A hypervisor populates ACPI tables by detecting guest operating system access and determining the hardware configuration, allowing dynamic updates and reverting to the original state, eliminating the need for special firmware and enabling dynamic management of address ranges.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If special firmware is used within the virtual machine to populate ACPI tables, then the tables can be populated with hardware configuration information, but the tables become static and must remain fixed, limiting flexibility

Engineering Contradiction:
ImproveACPI table population accuracyVSAvoidACPI table dynamic update capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a hypervisor as an intermediary layer between the firmware and the ACPI tables. The hypervisor intercepts guest OS access attempts to ACPI tables, determines the current hardware configuration, and populates the tables dynamically. This mediator approach allows the system to maintain reliable hardware configuration information while enabling dynamic updates without requiring special firmware within the virtual machine.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent transforms the static ACPI table population process into a dynamic one by implementing a flag mechanism. When a guest OS attempts to access an ACPI table, the hypervisor checks a flag to determine whether to initialize the table. This allows the ACPI tables to be dynamically populated based on actual hardware configuration at the time of access, rather than being fixed at firmware initialization.

Inventive Principle:
Principle #15Dynamics

2Stability of the object's composition

If ACPI tables are stored in read-only memory areas, then the tables remain fixed during virtual machine lifetime, but this limits the ability to update tables while the virtual machine is active

Engineering Contradiction:
ImproveACPI table immutabilityVSAvoidACPI table update flexibility
Core Design Contradiction:
Stability of the object's compositionVSEase of operation

Solution Approach 1:

The hypervisor acts as an intermediary that manages ACPI table contents without requiring the tables to be in truly read-only memory. By intercepting guest OS access attempts and dynamically populating the tables based on hardware configuration, the hypervisor enables updates while maintaining the appearance of stability for the guest operating system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the state parameter of ACPI tables from static to dynamic by implementing a flag-based initialization mechanism. The flag tracks whether the table has been initialized, and the hypervisor can update the table contents based on current hardware configuration, effectively changing the tables from immutable to mutable while maintaining system stability.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If firmware scans hardware devices to populate ACPI tables, then the tables contain accurate hardware information, but this requires special firmware within the virtual machine, increasing system complexity

Engineering Contradiction:
ImproveHardware configuration accuracyVSAvoidFirmware requirements
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges the ACPI table population function from the firmware level to the hypervisor level. Instead of requiring separate firmware within the virtual machine to scan hardware devices, the hypervisor performs the hardware scanning and table population directly, combining these functions into a single layer and eliminating the need for special firmware in the virtual machine.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The hypervisor serves as an intermediary that performs hardware device scanning and ACPI table population, replacing the need for firmware-based hardware detection. This intermediary approach maintains accurate hardware configuration information while eliminating the complexity of requiring special firmware within the virtual machine environment.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9921865B2Population of system tables by hypervisor
Publication Date: 2018.03.20 RED HAT ISRAEL
  • US9921865B2 patent drawing
  • US9921865B2 patent drawing
  • US9921865B2 patent drawing

AI summary

A system and method for system table modification in a virtualized computer system are disclosed. In accordance with one embodiment, a hypervisor that is executed by a computer system detects an attempt by a guest operating system of a virtual machine to access a system table. In response to the detecting, the hypervisor determines a hardware configuration of the virtual machine, and populates one or more entries of the system table in view of the hardware configuration.