Binary Translation - Static Binary Translation

Static Binary Translation

A translator using static binary translation aims to convert all of the code of an executable file into code that runs on the target architecture without having to run the code first, as is done in dynamic binary translation. This is very difficult to do correctly, since not all the code can be discovered by the translator. For example, some parts of the executable may be reachable only through indirect branches, whose value is known only at run-time.

One such static binary translator uses universal superoptimizer peephole technology (developed by Sorav Bansal, and Alex Aiken from Stanford University) to perform efficient translation between possibly many source and target pairs, with considerably low development costs and high performance of the target binary. In experiments of PowerPC-to-x86 translations, some binaries even outperformed native versions, but on average they ran at two-thirds of native speed.

Read more about this topic:  Binary Translation

Famous quotes containing the word translation:

    To translate, one must have a style of his own, for otherwise the translation will have no rhythm or nuance, which come from the process of artistically thinking through and molding the sentences; they cannot be reconstituted by piecemeal imitation. The problem of translation is to retreat to a simpler tenor of one’s own style and creatively adjust this to one’s author.
    Paul Goodman (1911–1972)