Precompiling Web Application Code in Client RAM

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Delivering large web applications to client computing devices is time-consuming due to the need for network downloads, as existing methods often require serial data access from disk storage, which is slower than parallel network access.

Innovation Solution

A method where a client computing device precompiles locally stored software code for a web application by loading it into RAM before receiving a network response, optimizing performance by determining the likelihood of content updates and user-specified aggressiveness settings.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If web application code is downloaded from the network to the client computing device, then the web application can be executed, but the download time is excessive and network resources are consumed

Engineering Contradiction:
Improvedownload timeVSAvoidapplication deployment efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent applies preliminary action by precompiling web application code on the server before it is transferred to the client device. The server performs compilation, optimization, and preparation of the code in advance, so that when the code is downloaded to the client, it is already in an optimized state ready for immediate execution. This eliminates the need for client-side compilation and reduces download and execution time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the compilation and code preparation processes from the client device and relocates them to the server environment. By taking out these resource-intensive operations from the client side and performing them on the server, the patent reduces the computational burden on the client device and minimizes the amount of unoptimized code that needs to be transferred over the network.

Inventive Principle:
Principle #2Taking out (Extraction)

2Speed

If web application code is stored on disk at the client computing device, then the code can be accessed locally, but serial disk access is slower than parallel network access

Engineering Contradiction:
Improvecode access speedVSAvoidcode retrieval time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent applies preliminary action by preloading web application code from disk into RAM memory before it is needed for execution. The system proactively transfers code from slow serial disk storage to fast parallel RAM access in advance, so that when the code needs to be executed, it is already available in high-speed memory. This eliminates the bottleneck of serial disk access during runtime.

Inventive Principle:
Principle #10Preliminary action

3Speed

If web application code is loaded into RAM at the client computing device, then execution speed is improved, but memory resources are consumed

Engineering Contradiction:
Improveexecution speedVSAvoidmemory resource consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by selectively loading only the specific portions of web application code that are currently needed into RAM, rather than loading entire applications or unused code segments. The system intelligently determines which code modules require immediate execution and prioritizes loading those into memory, while leaving other code on disk. This optimized selective loading approach improves execution speed for active code while minimizing unnecessary memory consumption.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9516092B2Precompiling locally-stored instructions for a web application
Publication Date: 2016.12.06 GOOGLE LLC
  • US9516092B2 patent drawing
  • US9516092B2 patent drawing
  • US9516092B2 patent drawing

AI summary

Systems and methods for accessing locally-stored content for a web application are disclosed. In some aspects, a user input for requesting a web application is received at a client computing device. A network request for the web application is provided via a network. That software code for the web application is stored in local storage of the client computing device is determined. The stored software code for the web application is placed into a random access memory (RAM) of the client computing device. At least a portion of the stored software code is precompiled prior to receiving a response to the network request.