Direct Application Execution from Nonvolatile Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing semiconductor nonvolatile memory systems, such as flash memory in portable devices, face inefficiencies in managing and executing applications due to the need for loading and reassembling applications in RAM, which consumes resources and delays updates, especially in time-critical situations.
Innovation Solution
A processor-based device architecture that allows direct execution of applications from a semiconductor nonvolatile memory by storing the application and database in a contiguous, linear fashion, using a code manager software to manage the application and leverage meta-information, thereby eliminating the need for RAM usage and reducing startup times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If applications are loaded and reassembled in RAM before execution, then applications can be executed on the target device, but RAM resources are consumed and startup time is increased
Solution Approach 1:
The application is pre-processed and stored in executable form directly in the nonvolatile memory in a format that can be executed without loading into RAM. The code is organized with proper segment headers and relocation information pre-configured during compilation or linking, enabling direct execution from nonvolatile memory.
Solution Approach 2:
The invention extracts the requirement for RAM loading by separating the application code storage from execution memory. The application is stored in executable form in nonvolatile memory and executed directly, removing the intermediate RAM loading and reassembly step that traditionally consumed time and resources.
2Reliability
If applications are loaded and reassembled in RAM before execution, then applications can be executed on the target device, but RAM resources are exhausted
Solution Approach 1:
The application is pre-processed and stored in executable form directly in the nonvolatile memory in a format that can be executed without loading into RAM. The code is organized with proper segment headers and relocation information pre-configured during compilation or linking, enabling direct execution from nonvolatile memory.
Solution Approach 2:
The invention extracts the requirement for RAM loading by separating the application code storage from execution memory. The application is stored in executable form in nonvolatile memory and executed directly, removing the intermediate RAM loading and reassembly step that traditionally consumed time and resources.
3Productivity
If applications are stored in executable form on flash memory, then direct execution is possible, but the application and database must be managed separately
Solution Approach 1:
The invention merges the application code and database into a single contiguous storage structure in nonvolatile memory. The application is stored with its associated database in a unified format, allowing the entire application package to be managed as one unit and executed directly without separate loading operations.
Solution Approach 2:
The nonvolatile memory structure is designed to serve multiple functions: storing application code in executable form, storing associated database, and enabling direct execution. The same storage medium handles both code and data, reducing management overhead.
Data Source
AI summary
A processor-based device (e.g., a wireless device) may include a processor and a semiconductor nonvolatile memory to directly execute an application (e.g., an execute-in-place application) using an associated database. Within a flash memory, in one embodiment, an executable program may be separately stored in a non-fragmented manner from a resident database that includes program management information for use in an execution that does not involve a random access memory, saving time and resources.


