Virtual Typing Executables for Runtime Patching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional methods for fixing computer program errors require stopping and restarting the system, which is inefficient and time-consuming, as they involve installing patches and restarting the computer system.
Innovation Solution
The implementation of virtual types in computer programs allows for real-time modification by receiving an instruction string with a command line switch and new values, enabling the replacement of existing values during execution without halting the program.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional patch installation method is used to fix computer program errors, then the error can be corrected, but the system must be stopped and restarted which causes loss of time and reduces productivity
Solution Approach 1:
The patent implements dynamic modification of the computer program during execution by allowing patch instructions to be loaded and applied without stopping the program. The system dynamically updates code segments in memory and continues execution, transforming the static patch application process into a dynamic runtime operation.
Solution Approach 2:
The patent prepares patch instructions in advance as separate loadable modules that can be quickly injected into the running program. By pre-compiling and packaging corrections as standalone instruction sets, the system can apply fixes immediately upon receipt without needing to perform lengthy compilation or linking operations during the actual patching process.
2Reliability
If traditional patch installation method is used to fix computer program errors, then the error can be corrected, but the system complexity increases due to requiring patch management and system restart procedures
Solution Approach 1:
The patent implements self-service patching where the running computer program automatically loads and applies correction instructions without requiring external intervention for system restart or complex patch management procedures. The program monitors itself, detects errors, and applies fixes autonomously during execution.
Solution Approach 2:
The patent segments the computer program into modular code sections that can be independently updated. By dividing the program into distinct functional units with identifiable entry and exit points, the system can apply patches to specific segments without affecting the entire program, simplifying patch management and reducing complexity.
3Productivity
If virtual types are used to enable real-time modification, then the productivity is improved by avoiding system restarts, but the device complexity increases due to implementing virtual type mechanisms
Solution Approach 1:
The patent introduces virtual types as intermediary abstractions that sit between the physical hardware and the running program. These virtual type constructs provide a layer of indirection that enables runtime modification without directly manipulating the underlying program code, simplifying the implementation of real-time updates while maintaining productivity benefits.
Data Source
AI summary
Computer program product, apparatus, and data processing system for modifying a computer program. According to one embodiment, a new value to replace a value associated with a virtual type in a computer program is received. The new value is received during execution of the computer program by a processor unit. The replacement of the value by the new value modifies the computer program while the computer program is executed by the processor.


