Download: PDF.
“An Improved Scalable Mixed-Level Approach to Dynamic Analysis of C and C++ Programs” by Robert Andrew Rudd. Masters thesis, MIT Department of Electrical Engineering and Computer Science, (Cambridge, MA), Jan. 2010.
In this thesis, I address the challenges of developing tools which use a mixed-level approach to dynamic binary analysis. The mixed-level approach combines advantages of both source-based and binary-based approaches to dynamic analysis, but comes with the added challenge of dealing with the implementation details of a specific implementation of the target language. This thesis describes the implementation of three existing tools which use the mixed-level approach: Fjalar, a C/C++ dynamic analysis framework, Kvasir, A C/C++ value profiling tool, and Dyncomp, a tool for inferring the abstract types of a C or C++ program.
Additionally, this thesis describes the steps I took in increasing the maintainability and portability of these tools. I investigated and documented platform specific dependencies; I documented the process of merging in upstream changes of Valgrind, the Dynamic Binary Instrumenter Fjalar is built on, to aid Fjalar in keeping in-sync with Valgrind bug-fixes; and I implemented a tool for debugging Dyncomp errors.
Download: PDF.
BibTeX entry:
@mastersthesis{Rudd2010, author = {Robert Andrew Rudd}, title = {An Improved Scalable Mixed-Level Approach to Dynamic Analysis of C and C++ Programs}, school = {MIT Department of Electrical Engineering and Computer Science}, address = {Cambridge, MA}, month = jan, year = {2010} }