Extensible Firmware Abstraction via Null Libraries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Firmware development across multiple computing platforms is hindered by the need for customization to accommodate different execution dependencies and addressing schemes, leading to increased development time, error risk, and maintenance costs due to the requirement for multiple versions of firmware modules.

Innovation Solution

The creation of platform-specific libraries, such as null libraries and translation library classes, allows for the addition of execution dependencies and addressing schemes without modifying shared firmware modules, enabling their reuse across platforms while maintaining modularity and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If firmware modules are customized for each computing platform to accommodate different execution dependencies and addressing schemes, then platform-specific requirements are met, but development time, error risk, and maintenance costs increase due to multiple versions of modules

Engineering Contradiction:
Improveplatform compatibilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent introduces platform-specific libraries as intermediary components that wrap shared firmware modules. These libraries handle platform-specific execution dependencies and addressing schemes, allowing the same shared module to be used across multiple platforms without modification. The library acts as a mediator between the universal module and platform-specific requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the firmware into two distinct parts: shared firmware modules that contain universal functionality and platform-specific libraries that handle platform-dependent aspects. This segmentation allows the shared modules to remain unchanged across platforms while the libraries are customized for each platform, reducing development time and maintenance effort.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If multiple versions of firmware modules are created for different platforms, then platform-specific customization is achieved, but the chance of containing errors or creating conflicts with hardware or other modules increases

Engineering Contradiction:
Improveplatform compatibilityVSAvoiderror risk
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

Platform-specific libraries serve as an intermediary layer that isolates platform-specific code from shared firmware modules. This separation ensures that errors in platform-specific libraries do not propagate to shared modules, and vice versa. The shared modules maintain high reliability since they are not modified for each platform.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

By segmenting firmware into shared modules and platform-specific libraries, the patent limits the scope of potential errors. Shared modules are tested once for universality, while platform-specific libraries are tested independently. This segmentation reduces the overall error risk compared to maintaining multiple versions of complete firmware modules.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If firmware modules are modified for each platform, then execution dependencies and addressing schemes are accommodated, but updating the multiple versions becomes laborious and may create additional errors

Engineering Contradiction:
Improveplatform compatibilityVSAvoidmaintenance effort
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent segments firmware updates into two categories: updates to shared modules that benefit all platforms, and updates to platform-specific libraries that are independent. This segmentation makes maintenance easier since shared module updates are applied once and automatically benefit all platforms, while platform-specific library updates can be handled independently without affecting other platforms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Shared firmware modules are designed with universal functionality that works across multiple platforms. This universality means that a single update to a shared module benefits all platforms simultaneously, reducing the overall maintenance effort compared to updating multiple platform-specific versions separately.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9910684B2Extensible firmware abstraction
Publication Date: 2018.03.06 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9910684B2 patent drawing
  • US9910684B2 patent drawing
  • US9910684B2 patent drawing

AI summary

A method for extensible firmware abstraction includes creating a null library and adding null library dependencies to the null library's build file. The null library is associated with a shared firmware module that depends on the null library dependencies for successful execution. A computer processor executes the build file, null library, and shared firmware module to impose the null library dependencies on execution of the shared firmware module.