VMM Intercepting ACPI Calls to Protect Shared Device Power States
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtual machine monitor (VMM) systems, the user operating system (UOS) unintentionally deenergizes devices during low power mode, which are essential for the service operating system (SOS) or VMM, leading to control issues due to unshielded hardware access.
Innovation Solution
The VMM intercepts ACPI calls from the UOS to BIOS, determining if the device is shared with the SOS before allowing it to enter a reduced energy state, ensuring the SOS can complete its interactions before power management is applied, and delaying the call to BIOS until the SOS has no further need of the device.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of energy
If the UOS is given complete access to ACPI tables to enable low power mode operation, then energy conservation is improved, but device control reliability deteriorates because the UOS may unwittingly deenergize devices needed by the SOS or VMM
Solution Approach 1:
The VMM acts as an intermediary between the UOS and the ACPI tables. It intercepts ACPI calls from the UOS, determines whether the target device is shared with the SOS or VMM, and selectively prevents deenergization of shared devices. This mediator approach allows the UOS to attempt low power mode operations while the VMM ensures reliability by blocking potentially harmful calls to shared devices.
2Reliability
If the VMM intercepts all ACPI calls from the UOS to prevent premature device deenergization, then device control reliability is improved, but system operation complexity increases due to the need to determine device sharing status
Solution Approach 1:
The system performs preliminary action by pre-establishing device sharing information in the ACPI tables before the UOS executes low power mode calls. The VMM uses this pre-configured information to quickly determine whether a device is shared, avoiding complex real-time analysis. This preliminary preparation reduces the complexity of the interception logic while maintaining reliability.
Data Source
AI summary
A call from a user operating system (UOS) to BIOS to configure a connected device into a reduced energy consumption mode is routed through a virtual machine monitor (VMM). The VMM determines whether a service O.S. (SOS) is in need of the device and if so the VMM informs the UOS that the device has been configured as ordered, while allowing the SOS to complete its task with the device. If the SOS is not in need of the device, or at the completion of the SOS task with the device, the VMM passes the call to ACPI/BIOS to configure the device in the demanded energy consumption mode.


