<?xml version="1.0" encoding="UTF-8"?>
<collection xmlns="http://www.loc.gov/MARC21/slim">
    <record>
        <controlfield tag="001">7141</controlfield>
        <controlfield tag="005">20150325135934.0</controlfield>
        <datafield tag="037" ind1=" " ind2=" ">
            <subfield code="a">TAZ-PFC-2012-187</subfield>
        </datafield>
        <datafield tag="041" ind1=" " ind2=" ">
            <subfield code="a">spa</subfield>
        </datafield>
        <datafield tag="100" ind1="1" ind2=" ">
            <subfield code="a">Artal Lozano, Juan Antonio</subfield>
        </datafield>
        <datafield tag="245" ind1="0" ind2="0">
            <subfield code="a">Estudio comparativo de frameworks de instrumentación dinámica de ejecutables</subfield>
        </datafield>
        <datafield tag="260" ind1=" " ind2=" ">
            <subfield code="a">Zaragoza</subfield>
            <subfield code="b">Universidad de Zaragoza</subfield>
            <subfield code="c">2012</subfield>
        </datafield>
        <datafield tag="506" ind1=" " ind2=" ">
            <subfield code="a">by-nc-sa</subfield>
            <subfield code="b">Creative Commons</subfield>
            <subfield code="c">3.0</subfield>
            <subfield code="u">http://creativecommons.org/licenses/by-nc-sa/3.0/</subfield>
        </datafield>
        <datafield tag="520" ind1=" " ind2=" ">
            <subfield code="a">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.</subfield>
        </datafield>
        <datafield tag="521" ind1=" " ind2=" ">
            <subfield code="a">Ingeniero en Informática</subfield>
        </datafield>
        <datafield tag="540" ind1=" " ind2=" ">
            <subfield code="a">Derechos regulados por licencia Creative Commons</subfield>
        </datafield>
        <datafield tag="653" ind1="1" ind2=" ">
            <subfield code="a">instrumentación dinámica</subfield>
        </datafield>
        <datafield tag="653" ind1="1" ind2=" ">
            <subfield code="a">dbi</subfield>
        </datafield>
        <datafield tag="653" ind1="1" ind2=" ">
            <subfield code="a">benchmark</subfield>
        </datafield>
        <datafield tag="653" ind1="1" ind2=" ">
            <subfield code="a">rendimiento</subfield>
        </datafield>
        <datafield tag="653" ind1="1" ind2=" ">
            <subfield code="a">pin</subfield>
        </datafield>
        <datafield tag="653" ind1="1" ind2=" ">
            <subfield code="a">valgrind</subfield>
        </datafield>
        <datafield tag="653" ind1="1" ind2=" ">
            <subfield code="a">dynamorio</subfield>
        </datafield>
        <datafield tag="700" ind1=" " ind2=" ">
            <subfield code="a">Rodríguez Fernández, Ricardo J.</subfield>
            <subfield code="e">dir.</subfield>
        </datafield>
        <datafield tag="710" ind1="2" ind2=" ">
            <subfield code="a">Universidad de Zaragoza</subfield>
            <subfield code="b">Informática e Ingeniería de Sistemas</subfield>
            <subfield code="c">Lenguajes y Sistemas Informáticos</subfield>
        </datafield>
        <datafield tag="720" ind1="2" ind2=" ">
            <subfield code="a">Merseguer Hernáiz, José Javier</subfield>
            <subfield code="e">ponente</subfield>
        </datafield>
        <datafield tag="856" ind1="0" ind2=" ">
            <subfield code="f">424787@celes.unizar.es</subfield>
        </datafield>
        <datafield tag="856" ind1="4" ind2=" ">
            <subfield code="s">423909</subfield>
            <subfield code="u">http://zaguan.unizar.es/record/7141/files/TAZ-PFC-2012-187.pdf</subfield>
            <subfield code="y">Memoria (spa)</subfield>
        </datafield>
        <datafield tag="909" ind1="C" ind2="O">
            <subfield code="o">oai:zaguan.unizar.es:7141</subfield>
            <subfield code="p">driver</subfield>
            <subfield code="p">proyectos-fin-carrera</subfield>
        </datafield>
        <datafield tag="950" ind1=" " ind2=" ">
            <subfield code="a"></subfield>
        </datafield>
        <datafield tag="980" ind1=" " ind2=" ">
            <subfield code="a">TAZ</subfield>
            <subfield code="b">PFC</subfield>
            <subfield code="c">EINA</subfield>
        </datafield>
    </record>

    
</collection>