Binary Control Program Modification via Mapping Table
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Developers face challenges in modifying control programs for control units, particularly in identifying and replacing functions in binary code without access to source code, due to the complexity of parsing binary code and assigning function calls to specific functions.
Innovation Solution
A method that creates a mapping table to identify and store branch addresses, variable accesses, and function calls, allowing for the modification of control programs by comparing this table with a predefined mapping table to assign function names and replace variables, enabling function modification without source code knowledge.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If binary code analysis (parsing) is performed to identify function calls, then function addresses can be determined, but the specific function names cannot be assigned
Solution Approach 1:
The patent creates a mapping table that copies and stores the correspondence between function names and their memory addresses during the development phase. This mapping table serves as a reference copy that can be used later to identify function names in the binary code without needing the original source code, thus resolving the information loss problem.
Solution Approach 2:
The patent performs the function identification and mapping creation in advance during the development phase, before the binary code is deployed. By preliminarily establishing the mapping between function names and addresses, the system enables later identification of functions in the installed control unit without requiring source code access at that later stage.
2Adaptability or versatility
If service functions are inserted into control program code to replace functions, then function modification is enabled, but source code availability is required
Solution Approach 1:
The patent introduces an intermediary mapping table that mediates between the binary code and the function modification process. Instead of requiring direct access to source code, the mapping table serves as an intermediary structure that enables function identification and modification through binary code analysis alone, thus resolving the accessibility problem.
3Adaptability or versatility
If control program modification is performed in installed control units, then field changes are enabled, but complex interfaces and devices are required
Solution Approach 1:
The patent extracts the essential information needed for function modification (function names and addresses) from the binary code using the pre-created mapping table. By extracting only the necessary identification information rather than requiring complete source code or complex development environments, the system enables simpler field modification processes using basic interfaces like dSPACE DCI-GSI2.
Data Source
AI summary
A method for influencing a control program of a control unit, the control program having a plurality of first functions configured for controlling an actuator. The program code of the control program is examined for the occurrence of function calls, and the branch addresses and return addresses connected with the function calls, and the variables connected with the applicable first functions, are ascertained with the names of the variables and with the applicable memory addresses. The ascertained first functions and variables assigned to the applicable first functions are stored with the connected memory addresses in a first mapping table, and from a comparison of the first mapping table with a second predefined mapping table, function names are assigned to at least a portion of the first functions, and at least one first value of one of the variables is replaced by a second value.


