Kernel Binary Distribution via Network Compilation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software distribution methods face challenges in efficiently provisioning up-to-date software across networked systems, particularly in data centers and cloud computing environments, where hardware changes can lead to erroneous or inefficient software execution.

Innovation Solution

The method involves compiling kernel software instructions based on network node hardware configurations and communicating these compiled instructions across the network to enable efficient software development and execution, using a system with nodes that include processor circuitry, memory, and interconnects to facilitate the distribution and execution of kernel and application binaries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software is distributed traditionally across networked systems, then software can be deployed to multiple nodes, but hardware changes cause erroneous or inefficient software execution

Engineering Contradiction:
Improvesoftware execution accuracyVSAvoidhardware configuration compatibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent applies preliminary action by compiling kernel software instructions in advance based on specific hardware configurations before deployment. The system pre-generates hardware-specific kernel binaries and stores them for later use, so when software needs to be deployed, the pre-compiled instructions are already available and can be directly applied without re-compilation, ensuring both reliability and adaptability

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements local quality by creating customized kernel software instructions tailored to each specific hardware configuration. Instead of using a generic one-size-fits-all approach, the system generates distinct kernel binaries optimized for particular hardware setups, ensuring that each node receives software instructions that are precisely matched to its local hardware characteristics

Inventive Principle:
Principle #3Local quality

2Reliability

If kernel software is customized for each hardware configuration, then software execution accuracy improves, but software distribution complexity increases

Engineering Contradiction:
Improvesoftware execution accuracyVSAvoidsoftware distribution system
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies copying by creating replicate kernel binary files for different hardware configurations and storing them in a centralized repository. Once kernel software is compiled for a particular hardware setup, the resulting binary can be copied and distributed to multiple nodes with identical hardware configurations, avoiding the need to re-compile and reducing distribution complexity while maintaining execution accuracy

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent implements universality by designing a software distribution system that can handle multiple hardware configurations through a single unified approach. The system maintains a repository that universally stores kernel binaries for various hardware types, and the distribution mechanism can universally select and deploy the appropriate binary based on the target node's hardware configuration, simplifying the overall distribution process

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

3Productivity

If software is frequently updated across the network, then up-to-date software is provisioned, but network bandwidth and system resources are consumed

Engineering Contradiction:
Improvesoftware update speedVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies copying by distributing pre-compiled kernel binary files across the network repository system. Once kernel software is compiled and stored in the repository, it can be efficiently copied to multiple nodes as needed. This approach minimizes network bandwidth consumption because the same binary file can be reused across multiple deployments without requiring re-transmission of source code or re-compilation resources

Inventive Principle:
Principle #26Copying

4Productivity

If kernel binaries are pre-compiled and stored, then software provisioning efficiency improves, but storage requirements increase

Engineering Contradiction:
Improvesoftware provisioning efficiencyVSAvoidstorage space for kernel binaries
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent applies copying by storing compiled kernel binaries in a centralized repository that serves multiple nodes. The system efficiently manages storage by maintaining copies of kernel binaries for different hardware configurations in one location, which can be accessed and deployed as needed. This centralized approach optimizes storage utilization compared to maintaining separate copies at each node

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11003479B2Device, system and method to communicate a kernel binary via a network
Publication Date: 2021.05.11 INTEL CORP
  • US11003479B2 patent drawing
  • US11003479B2 patent drawing
  • US11003479B2 patent drawing

AI summary

Techniques and mechanisms for communicating compiled software instructions via a network, wherein the compiled instructions are to execute a kernel process of a network device. In an embodiment, a first node of a network receives a kernel source code from a second node of the network. The first node compiles the kernel source code to generate a kernel binary code, which is provided to the second node. Based on the kernel binary code being communicated to the second node, a software developer is able to perform a simulation that facilitates the development of an application binary code. The first node subsequently receives the application binary and an indication that the application binary is to be executed with the kernel binary at the first node. In some embodiments, the first node executes an application process and a kernel process to provide an application offload resource for another network node.