Kernel Boot Initialization via Platform-Specific Modules

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional operating systems become bloated by including code to support various platforms, leading to increased memory usage and complexity, as they must include instructions for initializing all possible hardware features during the boot-up process, even if those features are not present on the specific platform.

Innovation Solution

The operating system kernel invokes platform-specific modules during the early stages of boot-up, specifically during CPU initialization, to perform platform-dependent initialization tasks, allowing the kernel to remain platform-independent and avoid loading unnecessary code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the operating system kernel includes code to support all possible platforms, then the kernel can operate on multiple platforms, but the kernel size and memory footprint increase

Engineering Contradiction:
Improveplatform compatibilityVSAvoidkernel size
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent segments the kernel into platform-independent core code and platform-specific modules. The platform-specific initialization code is separated into loadable modules that are only loaded when needed, rather than being compiled into the kernel itself. This allows the kernel to maintain multi-platform compatibility while keeping the core size small.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts platform-specific initialization code from the kernel and places it in separate loadable modules. These modules are extracted from the kernel image and loaded dynamically during boot, allowing the kernel to remain small and platform-independent while still supporting multiple platforms through optional module loading.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If the kernel includes all platform-specific initialization instructions, then all hardware features can be initialized, but the complexity of the kernel increases

Engineering Contradiction:
Improvehardware supportVSAvoidkernel complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the initialization process into platform-independent phases and platform-dependent phases. Platform-specific hardware initialization is segmented into separate modules that are loaded and executed only when the corresponding hardware is present, reducing the apparent complexity of the kernel while maintaining full hardware support capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent makes the kernel dynamically adaptable by loading platform-specific modules only when needed. The kernel structure transitions from a static, all-inclusive design to a dynamic, on-demand design where complexity is introduced only when specific hardware features are detected and require initialization.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If the kernel loads all platform-specific modules during boot-up, then all platform features are available, but memory usage increases

Engineering Contradiction:
Improvefeature availabilityVSAvoidmemory usage
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent implements partial loading of platform-specific modules during boot-up. Instead of loading all possible platform modules, the kernel loads only those modules corresponding to the actual hardware present on the platform. This partial action approach ensures feature availability for present hardware while avoiding the memory overhead of loading unnecessary modules.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8176311B1Initializing platform-specific features of a platform during early stages of booting the kernel
Publication Date: 2012.05.08 JUNIPER NETWORKS INC
  • US8176311B1 patent drawing
  • US8176311B1 patent drawing
  • US8176311B1 patent drawing

AI summary

Techniques are described for providing a kernel with the ability to execute functions from a kernel module during processor initialization and initializing a platform using platform-specific modules. An initialization function of the platform-specific module is executed before a platform-independent phase of the kernel of the operating system is executed. In one example, a device includes a computer-readable medium that stores instructions for a platform-specific module comprising an initialization function, and instructions for an operating system comprising a kernel, wherein the kernel comprises a boot sequence comprising a platform-dependent phase and a platform-independent phase, and a processor to execute instructions stored in the computer-readable medium. The processor executes the initialization function of the platform-specific module to initialize the device during the platform-dependent phase of the kernel boot sequence, and wherein the processor executes the platform-independent phase of the kernel boot sequence after executing the initialization function of the platform-specific module.