Capsule Coalescing in Separate Memory Subsystem
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In UEFI-based systems, the process of handling firmware updates through capsules is prone to corruption or unavailability of system memory during the boot process, and non-UEFI systems do not support capsule-based firmware updates.
Innovation Solution
A module is loaded to initialize a separate memory subsystem, identify a contiguous block of memory, and coalesce the capsule from system memory into this separate memory subsystem, where it is then copied back into system memory during the boot process, ensuring the capsule can be processed for firmware updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the capsule is coalesced in system memory during the PEI phase, then the firmware update can be processed, but the system memory may become corrupted or unavailable by the time the DXE phase attempts to process the capsule
Solution Approach 1:
The patent introduces a dedicated capsule coalescing memory region that acts as an intermediary between the scattered capsule fragments in system memory and the final processing location. This separate memory region serves as a safe staging area where capsules can be coalesced without risking corruption of the system memory or the capsule itself during the boot process.
2Manufacturing precision
If the MRC initializes system memory before coalescing the capsule, then the capsule can be coalesced in a contiguous block, but the initialization process may cause the capsule block to become corrupted or unavailable
Solution Approach 1:
The patent segments the memory management process by separating the capsule coalescing operation from the system memory initialization process. By allocating a dedicated memory region specifically for capsule coalescing, the system can initialize system memory without affecting the capsule storage location, ensuring both contiguous allocation and capsule availability.
3Adaptability or versatility
If the capsule is stored in system memory, then the UEFI can process the firmware update, but non-UEFI systems cannot support this capsule-based update process
Solution Approach 1:
The patent creates a universal capsule handling mechanism that can operate across different system types. By establishing a standardized memory region and coalescing process that is independent of UEFI-specific implementations, the solution enables reliable capsule-based firmware updates on both UEFI and non-UEFI systems through the same fundamental approach.
Data Source
AI summary
A capsule-based firmware update process is provided. After an operating system has provided a firmware update in the form of a capsule and the computing system is rebooted, a module can be loaded to locate a memory subsystem separate from the system memory. The module can initialize the separate memory subsystem and then identify a contiguous block of memory within the separate memory subsystem. The module can then cause the capsule to be coalesced from the system memory into the separate memory subsystem. Once the capsule is coalesced into the separate memory subsystem and the system memory is registered, the module can cause the coalesced capsule to be copied back into system memory where it can be accessed by other components that are subsequently loaded during the boot process.


