Stream-Based Software Delivery via RAM Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing methods for distributing computer software over networks require users to save and install software on their hard drives, which is time-consuming, consumes storage space, and necessitates updates that involve uninstalling old versions and installing new ones, especially for users with limited storage capacity.

Innovation Solution

A method where executable code is embedded in a data stream with multimedia data, allowing the code to be loaded directly into RAM for execution without being saved on permanent storage, using a software stub that establishes a network connection to download and launch software without installation on the client's hard drive.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If software is downloaded and installed on hard drive, then software can be executed, but storage space is consumed and installation time is required

Engineering Contradiction:
Improvesoftware deployment speedVSAvoidinstallation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent embeds executable code objects within data streams during transmission, preparing the software for direct execution before it reaches the client system. This preliminary packaging eliminates the need for separate installation steps, allowing software to be deployed and executed immediately upon receipt.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the installation step entirely from the software deployment process. By embedding executable code directly in data streams, the system removes the intermediate installation phase where software would traditionally be copied to and installed from hard drives, enabling direct execution from received data.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If software is installed on hard drive, then software can be executed, but storage space is consumed

Engineering Contradiction:
Improvesoftware execution capabilityVSAvoidstorage space
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent treats software as temporary, disposable objects that are received, executed, and then discarded. By embedding executable code in data streams for direct execution without permanent installation, the system eliminates the need for persistent storage of software files, using minimal temporary storage only during the execution phase.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The executable code is prepared and embedded in the data stream before transmission, allowing direct execution upon receipt without requiring allocation of permanent storage space on the client hard drive.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If old software version is installed, then software can be executed, but updates require uninstalling and reinstalling

Engineering Contradiction:
Improvesoftware executionVSAvoidupdate time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements a dynamic software delivery model where executable code objects are transmitted fresh each time through data streams. This dynamic approach allows clients to receive updated versions immediately without the static constraint of installed files, enabling rapid updates by simply receiving new data streams rather than performing uninstall-reinstall cycles.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system discards old software versions after execution and recovers storage space automatically. Each new software delivery replaces the previous executable code object without requiring manual removal, as the embedded code in data streams is self-contained and can be executed independently and then discarded.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentEP2497033B1Stream-based software application delivery and launching system
Publication Date: 2017.01.04 URBACH JULIAN MICHAEL
  • EP2497033B1 patent drawing
  • EP2497033B1 patent drawing
  • EP2497033B1 patent drawing

AI summary

In one embodiment, a method includes: receiving, by a first computer system, a data stream transmitted from a second computer system over a network connection between the first computer system and the second computer system, wherein the data stream comprises executable code of a software program; extracting, by the first computer system, the executable code of the software program from the data stream; allocating, by the first computer system, an amount of dynamic memory for the executable code of the software program; loading, by the first computer system, the executable code of the software program directly into the allocated dynamic memory; and executing, by the first computer system, the software program by launching the executable code of the software program loaded in the allocated dynamic memory.