Florin PETRESCU*
* Student at “Politehnica” University of Timisoara ** Professor at “Politehnica” University of Timisoara *** Software Developer at Continental Automotive Romania
Abstract - Dynamic code analysis represent the analysis of a software program that is performed through the execution of other computer programs that are built based on the analyzed program and run on a real or virtual processor. The objectives of the dynamic code analysis are to minimize the debugging time and to automatically pinpoint towards the potential errors and explain them as they occur during the program’s execution The aim of this paper is to emphasize the benefits of a dynamic code analyzer realized by implementing a virtual processor that simulates the code execution, together with the detection of the potential execution errors: out of memory requests, infinite loops, recursive calls etc.
Moto “How hard would an auto mechanic's job be if they were never allowed to turn on the car and listen to hear what kind of weird sound it was making, or plug in the diagnostics check while the car was running. That's dynamic analysis.” [Eric JARVI]
I. Introduction
While developing software applications, programmers have to make their programs reliable, and this considering a large number of scenarios and possible configurations. The dynamic code analysis can discover these types of errors and directly pinpoint to the vulnerable spots in the code. The dynamic code analysis represents the investigation of a program’s behavior using the information obtained while the program is executing. The main goal of the dynamic code analysis is to establish which sections of the programs contain potential errors that are not usually found by compiler or by means of static analysis. The objectives of the dynamic code analysis are to minimize the debugging time and to automatically pinpoint to the potential errors and explain them as they