Volatile Memory Firmware Runtime Update Without Reboot

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Firmware runtime components, such as SMI handlers, can introduce security vulnerabilities in computing devices, requiring updates and reboots that are not feasible in environments demanding maximum uptime, like large-scale data centers.

Innovation Solution

Implementing a method to store and execute updated firmware runtime components in volatile memory without rebooting the device, allowing immediate security improvements with the option to permanently apply updates during a future reboot.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If firmware updates are applied to address security vulnerabilities, then security is improved, but device reboot is required which causes operational disruption

Engineering Contradiction:
ImprovesecurityVSAvoidoperational continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the firmware update process into two distinct phases: (1) loading updated runtime components into volatile memory during runtime without reboot, and (2) permanently writing to non-volatile memory during a subsequent reboot. This segmentation allows security updates to be applied immediately in volatile memory while preserving operational continuity, and only requires reboot for permanent persistence, not for the update to take effect.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by loading updated firmware runtime components into volatile memory before a reboot occurs. This preliminary loading enables the security updates to be active and functional during runtime, while the actual permanent installation in non-volatile memory is deferred to a later reboot event. The update mechanism is prepared in advance but does not immediately require system restart.

Inventive Principle:
Principle #10Preliminary action

2Stability of the object's composition

If firmware runtime components are updated in non-volatile memory, then updates are permanent, but device reboot is required to apply the updates

Engineering Contradiction:
Improvepermanence of updateVSAvoidreboot time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent divides the update application process into two stages: immediate application in volatile memory (no reboot needed) and permanent persistence in non-volatile memory (reboot needed). This segmentation decouples the timing of security effectiveness from the timing of permanent storage, allowing the system to choose when to reboot based on operational requirements rather than security requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces volatile memory as an intermediary between the update source and non-volatile memory. Updated runtime components are first loaded into volatile memory where they can be immediately executed, serving as a temporary staging area. This intermediary allows the system to apply updates without immediate reboot, while still enabling permanent installation later when a reboot does occur.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If firmware updates are delayed to avoid reboot, then operational continuity is maintained, but security vulnerabilities persist

Engineering Contradiction:
ImproveuptimeVSAvoidsecurity vulnerabilities
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent enables preliminary application of security updates in volatile memory during runtime, so that security patches are active and functional before any reboot occurs. This preliminary action in volatile memory ensures that security vulnerabilities are addressed immediately without waiting for a reboot cycle, while the permanent installation is deferred to a later appropriate time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a dynamic update mechanism where firmware runtime components can be updated in volatile memory during runtime operations. This dynamic approach allows the system to adapt security posture in real-time based on vulnerability severity and operational requirements, rather than being constrained by static reboot-based update cycles. The system can operate with updated security measures immediately while planning permanent installation later.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11106457B1Updating firmware runtime components
Publication Date: 2021.08.31 AMERICAN MEGATRENDS
  • US11106457B1 patent drawing
  • US11106457B1 patent drawing
  • US11106457B1 patent drawing

AI summary

A computing device includes a processor, a volatile memory, and a non-volatile memory. The computing device receives a firmware update that includes updated firmware runtime components, such as updated runtime interrupt handlers (e.g. SMI handlers). The computing device stores the updated firmware runtime components in the volatile memory (e.g. RAM) of the device. The computing device also causes the updated firmware runtime components stored in the volatile memory to be used during the runtime of the computing device instead of one or more other firmware runtime components previously stored in the volatile memory. For example, the contents of one or more interrupt routing tables can be adjusted such that updated runtime interrupt handlers stored in volatile memory are used instead of previously installed and potentially insecure runtime interrupt handlers. On a subsequent reboot of the computing device, updated firmware runtime components stored in the non-volatile memory will be utilized.