Quiescing Boot Environment for Reliable Firmware Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Updating component firmware in computers is challenging due to the risk of other components accessing the component memory during the update process, as most components have a single memory that cannot be used while updating.

Innovation Solution

A method and system for quiescing a boot environment by reserving a portion of a storage device, storing an update boot image, and executing it to place the computer in a known quiescent state, allowing for reliable firmware updates by isolating the component memory from other system activities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single component memory is used in a component, then the device complexity is reduced, but the reliability of firmware updates deteriorates because the component cannot be used while updating

Engineering Contradiction:
Improvecomponent memory structureVSAvoidfirmware update reliability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The component memory is segmented into two distinct parts: a first component memory for storing the original firmware and a second component memory for storing the updated firmware. This segmentation allows the system to switch between memory locations during updates, preventing access conflicts and ensuring update reliability while maintaining simple individual memory structures.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If component memory is updated in place, then the update process is simplified, but the reliability deteriorates due to potential access by other components during updating

Engineering Contradiction:
Improveupdate process complexityVSAvoidfirmware update safety
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The update process extracts the firmware data from the first component memory and writes it to the second component memory separately. By taking the update operation out of the original memory location and performing it in a dedicated target memory, the system avoids access conflicts with other components while maintaining a relatively simple update process.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system performs preliminary actions by writing the updated firmware to the second component memory before switching to it. This preliminary writing ensures that the updated firmware is fully prepared and available before any switching occurs, preventing partial updates or access conflicts during the critical update moment.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If the system operates continuously without quiescing, then the productivity is maintained, but the ease of performing safe firmware updates deteriorates

Engineering Contradiction:
Improvesystem operational continuityVSAvoidfirmware update ease
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system dynamically switches between the first and second component memories based on the update state. During normal operation, the first memory is used; during updates, the system transitions to the second memory. This dynamic switching allows the system to maintain continuous operation while facilitating safe updates without requiring complete system shutdown.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8151101B2Method, apparatus, and system for quiescing a boot environment
Publication Date: 2012.04.03 LENOVO SWITZERLAND INTERNATIONAL GMBH
  • US8151101B2 patent drawing
  • US8151101B2 patent drawing
  • US8151101B2 patent drawing

AI summary

An apparatus, system, and method are disclosed for quiescing a boot environment. A reservation module reserves a portion of a first storage device. A store module stores an update boot image to the reserved portion. A detection module detects the update boot image stored on the first storage device when the computer boots and executes the update boot image in place of a standard boot image in response to detecting the update boot image. The update boot image places a computer in a known quiescent state.