UEFI Run-Time Services Virtual Address Space Re-Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Many UEFI firmware implementations do not fully comply with the UEFI specification, leading to inefficiencies in memory re-mapping for run-time services, often requiring both old and new mappings to coexist and not optimizing virtual address space usage.

Innovation Solution

A method for re-mapping memory regions of firmware run-time services into the kernel's virtual address space, involving selecting a re-mapping policy and using the SetVirtualAddressMap API to apply new mappings, while optionally maintaining old mappings if required by the platform.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If both old and new mappings are maintained during run-time service re-mapping, then firmware compatibility is improved, but virtual address space consumption increases

Engineering Contradiction:
Improvefirmware compatibilityVSAvoidvirtual address space consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic re-mapping policies that adapt to platform requirements. The system can switch between different re-mapping strategies (maintaining both mappings, using only new mapping, or using only old mapping) based on the specific firmware implementation needs, allowing optimal balance between compatibility and address space efficiency

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the mapping parameters (virtual address mappings) from static to dynamic, allowing the system to reconfigure address mappings based on platform requirements. This enables the system to optimize address space usage while maintaining compatibility when needed

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If run-time services are mapped to low virtual addresses for compatibility, then legacy BIOS compatibility is improved, but available kernel virtual address space decreases

Engineering Contradiction:
Improvelegacy BIOS compatibilityVSAvoidavailable kernel virtual address space
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent moves run-time services from the low virtual address space (0-4GB range) to the high virtual address space (>4GB range), effectively utilizing an underutilized dimension of the address space. This resolves the conflict between compatibility requirements and address space availability by operating in a different address space dimension

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If relative offsets between run-time services memory regions are maintained, then firmware implementation requirements are satisfied, but virtual address space optimization is reduced

Engineering Contradiction:
Improvefirmware implementation complianceVSAvoidaddress space optimization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic re-mapping policies that adapt to platform requirements. The system can switch between different re-mapping strategies (maintaining both mappings, using only new mapping, or using only old mapping) based on the specific firmware implementation needs, allowing optimal balance between compatibility and address space efficiency

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the mapping parameters (virtual address mappings) from static to dynamic, allowing the system to reconfigure address mappings based on platform requirements. This enables the system to optimize address space usage while maintaining compatibility when needed

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10185571B2Intelligent UEFI run-time services address space management
Publication Date: 2019.01.22 VMWARE INC
  • US10185571B2 patent drawing
  • US10185571B2 patent drawing
  • US10185571B2 patent drawing

AI summary

A method of re-mapping memory regions for firmware run-time services to a virtual address space of a kernel executed on a processor, includes the steps of selecting a re-mapping policy for re-mapping the memory regions for the firmware run-time services, creating a new mapping according to the selected re-mapping policy, and making a call to an application programming interface exposed by the firmware to apply the new map and re-map the memory regions for the firmware to the virtual address space of the kernel.