TAZ-PFC-2012-187


Estudio comparativo de frameworks de instrumentación dinámica de ejecutables

Artal Lozano, Juan Antonio
Rodríguez Fernández, Ricardo J. (dir.)

Merseguer Hernáiz, José Javier (ponente)

Universidad de Zaragoza, EINA, 2012
Informática e Ingeniería de Sistemas department, Lenguajes y Sistemas Informáticos area

Ingeniero en Informática

Abstract: La Instrumentación Dinámica de Ejecutables (Dynamic Binary Instrumentation, DBI) es una técnica muy potente que permite analizar el comportamiento, en tiempo de ejecución, de cualquier aplicación. DBI se puede usar, por ejemplo, para contar el número de instrucciones que ejecuta o contar todas las transferencias (lectura y/o escritura) a memoria que realiza un determinado programa. Un framework de DBI es una plataforma software que incluye programas, librerías, documentación y una API para manipulación de instrucciones en tiempo de ejecución. Existen diferentes frameworks de DBI (p.e., Pin, Valgrind, DynamoRIO, Paradyn/Dyninst), que proporcionan APIs muy extensas para que cada ingeniero pueda desarrollar sus propias herramientas de análisis dinámico, llamadas herramientas DBA (Dynamic Binary Analysis). Las herramientas DBA permiten analizar, generar optimizaciones y monitorizar el comportamiento de programas. El objetivo de este PFC es realizar un estudio comparativo centrado a nivel de impacto en rendimiento (performance) de diferentes frameworks de DBI. Es decir, se comprobará el rendimiento de una aplicación ejecutada de forma nativa, sin instrumentar, y se comparará con esta misma aplicación instrumentada por herramientas programadas bajo diferentes frameworks de DBI. De esta forma se obtiene el impacto en rendimiento de cada uno de los frameworks. Para poder llevar a cabo este estudio, se han seleccionado un conjunto de aplicaciones para crear un benchmark, que nos dará información de rendimiento de cada framework de DBI. Además, se pretende comparar cada framework de DBI atendiendo a las siguientes características: plataformas y tipos de ejecutables que aceptan, necesidad de disponer del código fuente, API proporcionada, facilidad de programación de herramientas DBA, licencia/coste y la posibilidad de vincular a un proceso en ejecución.


Free keyword(s): instrumentación dinámica ; dbi ; benchmark ; rendimiento ; pin ; valgrind ; dynamorio
Tipo de Trabajo Académico: Proyecto Fin de Carrera

Creative Commons License

El registro pertenece a las siguientes colecciones:
Academic Works > Trabajos Académicos por Centro > escuela-de-ingeniería-y-arquitectura
Academic Works > Final Degree Projects



Back to search

Rate this document:

Rate this document:
1
2
3
 
(Not yet reviewed)