Reconocimiento de Función de Ensamblaje en Sistemas Embebidos como un Problema de Optimización
Autores: Avitan, Matan; Ravve, Elena V.; Volkovich, Zeev
Idioma: Inglés
Editor: MDPI
Año: 2024
Acceso abierto
Artículo científico
2024
Reconocimiento de Función de Ensamblaje en Sistemas Embebidos como un Problema de Optimización
Categoría
Matemáticas
Subcategoría
Matemáticas generales
Palabras clave
Desarrollo de sistemas de software
Verificación
Código binario
Funciones de ensamblaje
Sistemas integrados
Optimización
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 34
Citaciones: Sin citaciones
Muchos aspectos diferentes del desarrollo y verificación de sistemas de software dependen de la identificación precisa de funciones en código binario. El reconocimiento de las funciones de ensamblaje fuente en sistemas integrados es uno de los desafíos fundamentales en el análisis de programas binarios. Mientras que numerosos enfoques asumen que las funciones se dan a priori, la correcta identificación de las funciones en binarios sigue siendo un gran problema. Esta contribución aborda el problema de la incertidumbre en el código binario en la identificación de funciones, que fueron optimizadas durante la compilación. Este trabajo investiga la diferencia entre funciones de depuración y funciones optimizadas mediante la modelización de estas funciones. Para hacerlo, presentamos un enfoque práctico centrado en el modelo para examinar similitudes entre funciones binarias. La idea principal es modelar cada función utilizando un conjunto de características predeterminadas, descubiertas experimentalmente, y luego encontrar un vector de pesos adecuado que pueda dar un factor de impacto a cada una de estas características. Después de encontrar el vector de pesos, los modelos introducidos de estas funciones deseadas pueden ser identificados en paquetes de software binario. Esto significa que reducimos el problema de identificación de similitud de los modelos a una versión clásica de problemas de optimización con un criterio de optimización. Utilizando nuestra implementación, encontramos que el enfoque propuesto funciona sin problemas para funciones que contienen al menos diez instrucciones de ensamblaje. Nuestra herramienta garantiza el éxito a un nivel muy alto.
Descripción
Muchos aspectos diferentes del desarrollo y verificación de sistemas de software dependen de la identificación precisa de funciones en código binario. El reconocimiento de las funciones de ensamblaje fuente en sistemas integrados es uno de los desafíos fundamentales en el análisis de programas binarios. Mientras que numerosos enfoques asumen que las funciones se dan a priori, la correcta identificación de las funciones en binarios sigue siendo un gran problema. Esta contribución aborda el problema de la incertidumbre en el código binario en la identificación de funciones, que fueron optimizadas durante la compilación. Este trabajo investiga la diferencia entre funciones de depuración y funciones optimizadas mediante la modelización de estas funciones. Para hacerlo, presentamos un enfoque práctico centrado en el modelo para examinar similitudes entre funciones binarias. La idea principal es modelar cada función utilizando un conjunto de características predeterminadas, descubiertas experimentalmente, y luego encontrar un vector de pesos adecuado que pueda dar un factor de impacto a cada una de estas características. Después de encontrar el vector de pesos, los modelos introducidos de estas funciones deseadas pueden ser identificados en paquetes de software binario. Esto significa que reducimos el problema de identificación de similitud de los modelos a una versión clásica de problemas de optimización con un criterio de optimización. Utilizando nuestra implementación, encontramos que el enfoque propuesto funciona sin problemas para funciones que contienen al menos diez instrucciones de ensamblaje. Nuestra herramienta garantiza el éxito a un nivel muy alto.