Constant-Bank Data Access for Relocatable Signed Programs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Enabling a program to access data regardless of its location is challenging, often requiring changes to the program code, which can lead to issues like invalid digital signatures.
Innovation Solution
A system compiles programs to refer to data using a constant bank that encodes actual data locations, allowing access to data without changing the program code, even if the data location changes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the program code is changed to access data at a new location, then the program can access the relocated data, but the digital signature of the program becomes invalid
Solution Approach 1:
The patent separates the data location information from the program code by introducing a constant bank that stores location references. The program code contains only symbolic references to data, while the constant bank holds the actual location mappings. This segmentation allows the code to remain unchanged while data locations are updated in the constant bank, resolving the contradiction between adaptability and signature validity.
Solution Approach 2:
The constant bank acts as an intermediary between the program code and the actual data storage locations. Instead of the program directly referencing data locations, it references entries in the constant bank, which in turn point to the actual data. This intermediary layer enables location changes without modifying the program code, maintaining both adaptability and digital signature integrity.
2Ease of operation
If the program code is modified to reference new data locations, then data accessibility is improved, but the complexity of program maintenance increases
Solution Approach 1:
By segmenting location information into a separate constant bank, the patent eliminates the need to modify program code when data locations change. The constant bank becomes the sole point of modification for location updates, significantly reducing program maintenance complexity while preserving data access capability.
Solution Approach 2:
The system automatically updates data location references through the constant bank mechanism. When data is relocated, only the constant bank entries need updating, and the system automatically adjusts all program references accordingly. This self-service approach simplifies maintenance by eliminating manual code modifications.
3Productivity
If absolute data addresses are embedded in the program, then data access is straightforward, but the program cannot adapt to data relocation
Solution Approach 1:
The constant bank serves as an intermediary that maintains efficient data access while enabling location independence. Program references to the constant bank are resolved to actual data locations during execution, providing both the efficiency of direct addressing and the flexibility of relocatable data through the intermediary layer.
Solution Approach 2:
The patent introduces an additional dimension to data addressing by creating a two-level reference system: program symbols pointing to constant bank entries, which in turn point to actual data locations. This dimensional expansion allows the system to maintain simple, efficient code references while incorporating complex location management capabilities.
Data Source
AI summary
Apparatuses, systems, and techniques to enable a program to access data regardless of where said data is stored. In at least one embodiment, a system enables a program to access data regardless of where said data is stored, based on, for example, one or more locations encoding one or more addresses of said data.


