Emulator ERW Decoding for Native Data Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for emulating e-mode programs on servers with different architectures and operating systems result in sub-optimal performance due to the need for storing data items in both native and e-mode formats, leading to overhead and inefficiency.
Innovation Solution
The introduction of an external reference word (ERW) in the e-mode format allows the emulator to directly access and utilize data items stored in native memory, enabling efficient data transfer and processing by modifying emulator operators to recognize and decode ERWs, which point to locations in native memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data items are stored in e-mode format for all emulated programs, then compatibility is maintained, but performance is sub-optimal due to inability to utilize native server capabilities
Solution Approach 1:
The data storage system is segmented into two formats: e-mode format for compatibility and native format for performance. The patent divides data items into those that remain in e-mode format and those that are stored in native format, allowing each to serve its specific purpose without forcing a uniform approach on all data.
Solution Approach 2:
The patent changes the data format parameter from a single e-mode format to a dual-format system where data items can exist in either e-mode or native format. This parameter change enables the system to optimize performance for native data while maintaining compatibility through e-mode data representations.
2Adaptability or versatility
If data items are stored in both native and e-mode formats, then both compiled and emulated programs can access data, but memory overhead and synchronization overhead increase
Solution Approach 1:
The patent extracts the requirement for dual data storage by allowing the emulator to access native-format data directly through a modified data structure. Instead of maintaining separate copies of data in both formats, the system extracts only the essential e-mode data structure elements needed for emulation while leveraging native-format storage for the actual data values.
3Quantity of substance
If common data items are kept only in e-mode format, then memory usage is reduced, but reformatting overhead occurs each time compiled C++ programs need to use the data
Solution Approach 1:
The patent applies preliminary action by pre-converting data to native format and storing it in that format before the compiled C++ programs need to access it. The data is prepared in advance in the optimal format for native execution, eliminating the need for reformatting operations during program execution.
4Productivity
If all data items are stored in native data format, then execution speed improves, but the emulator cannot utilize the data items for emulated e-mode programs
Solution Approach 1:
The patent introduces an intermediary data structure (the modified e-mode data structure with external reference words) that acts as a bridge between native-format data and the emulator's requirements. This intermediary allows the emulator to access and work with native-format data without requiring conversion to e-mode format, thus maintaining both performance and compatibility.
Data Source
AI summary
An embodiment of the invention is a technique for enabling an emulator that emulates an e-mode program to utilize stored data items whose values are stored in native data format in native memory. The emulator fetches an item referenced by the e-mode program. The referenced item comprises a tag field and a data field. The emulator determines whether the tag field of the referenced item indicates that the referenced item is an external reference word (ERW). If the tag field of the referenced item indicates that the referenced item is an ERW, the emulator decodes the ERW to obtain a data type and a pointer. The pointer corresponds to a location of a stored data item in native memory.


