UEFI Memory Descriptor Alignment for Legacy OS Boot

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Information handling systems face challenges in booting with different operating system configurations due to variations in memory descriptor support, leading to potential failure conditions when older OS versions encounter UEFI memory maps with multiple descriptors.

Innovation Solution

The system retrieves a UEFI image, initializes UEFI runtime services, and aligns them with a common memory descriptor, enabling boot compatibility with both single and multiple runtime memory descriptor-supported operating systems by copying the aligned services and memory maps to system memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the system uses multiple memory descriptors in UEFI runtime services to support modern operating systems, then the system can support larger and more complex memory configurations, but older operating systems that only support single runtime memory descriptors will fail to boot

Engineering Contradiction:
Improvememory descriptor supportVSAvoidboot compatibility
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system dynamically determines the number of memory descriptors at runtime based on the operating system's capabilities. The UEFI runtime service checks whether the loaded operating system supports multiple memory descriptors and adjusts the memory map configuration accordingly, allowing the same hardware to support both modern and legacy operating systems without modification

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of memory descriptor count based on the detected operating system version. When an older operating system is detected (one that only supports single runtime memory descriptor), the system configures the UEFI runtime service to use a single memory descriptor instead of multiple descriptors, ensuring compatibility while maintaining the ability to use multiple descriptors with modern systems

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the system configures UEFI runtime services for single memory descriptor to ensure compatibility with older operating systems, then boot reliability improves, but the system cannot utilize advanced memory features requiring multiple descriptors

Engineering Contradiction:
Improveboot compatibilityVSAvoidmemory descriptor support
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system dynamically determines the number of memory descriptors at runtime based on the operating system's capabilities. The UEFI runtime service checks whether the loaded operating system supports multiple memory descriptors and adjusts the memory map configuration accordingly, allowing the same hardware to support both modern and legacy operating systems without modification

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of memory descriptor count based on the detected operating system version. When an older operating system is detected (one that only supports single runtime memory descriptor), the system configures the UEFI runtime service to use a single memory descriptor instead of multiple descriptors, ensuring compatibility while maintaining the ability to use multiple descriptors with modern systems

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10303487B2System and method for booting an information handling system
Publication Date: 2019.05.28 DELL PROD LP
  • US10303487B2 patent drawing
  • US10303487B2 patent drawing
  • US10303487B2 patent drawing

AI summary

A method, information handling system (IHS) and sub-system for enabling booting of the IHS using different operating system configurations. The method includes retrieving, via a processor, a unified extensible firmware interface (UEFI) image from a storage device and initializing at least one UEFI runtime service. The processor determines if a memory map corresponding to the UEFI runtime service defines multiple memory descriptors. In response to determining that the memory map defines multiple memory descriptors, a common memory descriptor is identified. The UEFI runtime service and the corresponding memory map are aligned to the common memory descriptor. The aligned UEFI runtime service and the corresponding memory map are copied to a system memory of the IHS. The operating system is booted, wherein the aligned UEFI runtime service and the corresponding memory map are compatible with operating systems that support single runtime memory descriptors.