Abstract:
In the research of cross-platform migration without source code, efficiency is the main bottleneck restricting the development of dynamic binary translation technology. Using the method of disposing the local function can effectively improve the performance of binary translation by jacketing and replacing. However, in practical applications, as the number of library function calls in the source program or the number of the library function supported by translators increasing, the benefit of using disposing the local function is on decrease. The querying useless overhead in library function disposing grows which weakens and reduces the optimization effect of the method of disposing the local function. In order to address this kind of problem, a method is proposed based on the properties combined with dynamic and static translation. It is based on the characteristic of dynamic binary translation and the using of disposing the local function. The overhead for the query decreases with the method by preprocessing the query table and realizing the query with Hash function. It can map the source program addresses to corresponding processing function rapidly. Realized on a dynamic translator QEMU, the optimization method is implemented and tested. Experiments verify the effectiveness of this method to reduce query overhead in the process of using disposing the local function with dynamic translation.