3 ms·
What's the application for DBM? Sounds like a way to trace and JIT already-compiled programs for performance reasons, maybe to take advantage of newer CPU featu
by m-j-fox 9y ago
What's the application for DBM? Sounds like a way to trace and JIT already-compiled programs for performance reasons, maybe to take advantage of newer CPU features than the original compiler could target, or maybe to port between platforms.
Is any of that close?
- 68c12c16 9y agoYes, that's pretty close... You can also think of dynamic binary modification as a process level emulation. This gives you a lightweight tool that enables you to observe (e.g. profiling) and tinker (e.g. instruction hooking) a binary at run time. Sometimes you might not have the high-level source code of the binary. In case you want to better understand its behavior, you could run it with a DBM tool and let it print out the ordered sequence of the function calls at run time for a given input (sometimes this could take a lot of analysis if you want to do it statically -- due to all the branch instructions, and for each branch instruction, you might need to treat every program flow equally...).