RAM-Based Software Execution for Gateway Firmware Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional gateways are limited in updating software due to their reliance on read-only memory (ROM) for firmware, requiring reboots and collaboration with vendors, which is inefficient for security software needing frequent updates.
Innovation Solution
Implementing a download agent in firmware updatable read-only memory that creates a working area in random access memory to execute software packages without rebooting the device or breaking network connections, allowing for frequent and efficient updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If software is stored in read-only memory (ROM) for firmware updates, then device stability is maintained, but update frequency is limited and requires reboots
Solution Approach 1:
The patent divides the software storage into two segments: ROM for stable core firmware and RAM for frequently updated software packages. This segmentation allows the system to maintain stability from ROM while enabling frequent updates in RAM without requiring reboots, thus resolving the contradiction between device stability and update frequency.
Solution Approach 2:
The patent introduces a file system as an intermediary layer between ROM and RAM, allowing software packages to be extracted from ROM to RAM and executed without direct ROM modifications. This intermediary enables frequent updates while preserving ROM integrity and system stability.
2Adaptability or versatility
If firmware updates require rebooting the gateway, then software can be updated, but network connections are broken
Solution Approach 1:
The patent performs preliminary actions by extracting software packages from ROM to RAM during system initialization or maintenance windows. This allows the software to be prepared and loaded into RAM beforehand, enabling updates to occur without requiring reboots that would interrupt network connections.
Solution Approach 2:
The patent changes the operational parameter of software storage from persistent ROM to volatile RAM, allowing software updates to occur without system reboots. This parameter change enables continuous network operation while maintaining software update capability.
3Reliability
If third-party vendors update gateway firmware, then security software can be updated, but extensive collaboration is required
Solution Approach 1:
The patent enables the gateway to perform self-service updates by providing a mechanism where third-party vendors can upload security software packages to a repository, and the gateway autonomously downloads and executes these packages from RAM without requiring extensive vendor collaboration or ROM modification processes.
Solution Approach 2:
The patent creates a universal update mechanism that works with multiple vendors and software types. The file system and RAM-based execution environment provide a standardized interface that accepts software packages from any vendor, eliminating the need for vendor-specific collaboration processes.
4Stability of the object's composition
If ROM is used for firmware storage, then data persistence is maintained, but write operations require reboots
Solution Approach 1:
The patent adds a temporal dimension to software storage by using RAM's volatile nature advantageously. Software packages are extracted from persistent ROM to temporary RAM storage, allowing rapid write operations and updates without the time-consuming reboot process required by ROM, thus reducing update time while maintaining data persistence through the file system.
Data Source
AI summary
A computer-implemented method for executing a software package from within random access memory may include (1) identifying a computing device that contains both random access memory and firmware updatable read only memory, (2) providing a network accessible software package repository, (3) providing a download agent within the firmware updateable read only memory, the download agent being programmed to, (4) create a working area within the random access memory by emulating persistent storage, (5) access the software package repository through a network connection to extract a software package, and (6) execute the software package in the working area of the random access memory that emulates persistent storage. Various other methods, systems, and computer-readable media are also disclosed.


