EFI Boot Services Preservation for VM-Aware OS Reboot

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computer systems with EFI or UEFI firmware, the 'EFI Boot Services' are removed from main memory after the boot process, necessitating a complete hardware restart to reactivate them, which disrupts other operating systems and applications when a general operating system needs to be rebooted without virtualization.

Innovation Solution

Redirecting the pointer to the original ExitBootServices function to a modified version that keeps the EFI Boot Services available, preventing their deletion from memory, allowing repeated reboots without hardware reset.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the EFI Boot Services are removed from main memory after boot to free resources, then memory availability is improved, but the ability to restart the operating system without hardware reset is lost

Engineering Contradiction:
Improvememory availabilityVSAvoidoperating system restart capability
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The EFI firmware functionality is segmented into two parts: the original ExitBootServices function and a modified version. The modified version performs the same boot service deactivation while preserving the loading routines in memory, allowing OS restart capability to be maintained separately from the standard boot process

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A modified ExitBootServices function acts as an intermediary between the operating system and the EFI loading routines. This modified function serves as a mediator that deactivates boot services while keeping the loading routines accessible, enabling OS restart without hardware reset

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a complete hardware restart is performed to reactivate EFI Boot Services, then operating system restart is enabled, but other virtual machines and applications are interrupted

Engineering Contradiction:
Improveoperating system restart capabilityVSAvoidcontinuous operation of virtual machines
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The ability to restart the operating system is extracted from the hardware reset process. By modifying the ExitBootServices function to preserve loading routines in memory, the restart capability is separated from the interruptive hardware reset, allowing VMs and applications to continue running

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The modified ExitBootServices function is prepared in advance to perform a specialized deactivation that preserves loading routines. This preliminary setup enables subsequent OS restarts without requiring hardware reset, thus preventing interruption of other VMs and applications

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If the operating system is fully virtualized to enable separate restart, then restart capability is improved, but performance advantages of direct hardware access are lost

Engineering Contradiction:
Improveoperating system restart capabilityVSAvoidsystem performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The solution applies a localized modification to the ExitBootServices function rather than implementing full virtualization. This local change preserves the direct hardware access architecture and its performance benefits while adding the desired restart capability through a targeted firmware modification

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3070599B1Method and virtualisation control for starting an operting system on a computer hardware with a EFI or UEFI firmware
Publication Date: 2018.09.19 SIEMENS AG
  • EP3070599B1 patent drawingFigure 1~3
  • EP3070599B1 patent drawingFigure 4
  • EP3070599B1 patent drawingFigure 5

AI summary

The invention relates to a method for starting an operating system (GPOS) on computer hardware (HW) with an EFI or UEFI firmware interface, wherein the operating system is started under the control of a virtualization controller (hypervisor), wherein after the computer hardware has started, EFI or UEFI load routines are copied into a working memory of the computer hardware, and wherein the operating system (GPOS) reads an EFI or UEFI system table containing references to the EFI or UEFI load routines from the working memory and calls the EFI or UEFI load routines. During startup and at runtime of the operating system (GPOS), calls to the ExitBootServices functions of the EFI or UEFI load routines are prevented.This means that the EFI or UEFI load routines are available for repeated operating system restarts without requiring a hardware reset to reload these routines into memory. This offers the advantage that other virtual machines and operating systems can continue running without interruption, even if the operating system under consideration needs to be restarted repeatedly.