analizador de ocupación de memoria en sistemas...
TRANSCRIPT
Analizador de Ocupación deMemoria en Sistemas Embebidos
Ing. Alejandro Celery
Trabajo Final de la Carrera de Especializaciónen Sistemas Embebidos
Facultad de Ingeniería - UBA
Director:Ing. Juan Manuel Cruz
Motivación del proyecto
Un sistema al límite de su capacidad.
Ing. Alejandro Celery 1 / 21
Cuándo pasa esto?
En diseños existentes, al agregarnueva funcionalidad.
En desarrollos nuevos, al elegir elmicrocontrolador más económico.
Ing. Alejandro Celery 2 / 21
Cuándo pasa esto?
En diseños existentes, al agregarnueva funcionalidad.
En desarrollos nuevos, al elegir elmicrocontrolador más económico.
Ing. Alejandro Celery 2 / 21
Qué se podría hacer al respecto?
Vista de Treeviz, primera aplicación en usar treemaps(1992).
Ing. Alejandro Celery 3 / 21
Qué es lo que hacemos actualmente?
.bss.bufferColumnaVacia0x10002b88 0x7f ...(CM3_Display_C12.o)0x10002b88 bufferColumnaVacia
.bss.bufferColumnaGrafica0x10002c07 0x7f ...(CM3_Display_C12.o)0x10002c07 bufferColumnaGrafica
.bss.buffer10medicionesPong0x10002c86 0xa ...(CM3_Display_C12.o)0x10002c86 buffer10medicionesPong
.bss._ZZ16BSP_DibujarPuntoiimbE14tocaTransferir0x10002c90 0x1 ...(CM3_Display_C12.o)
*fill* 0x10002c91 0x3
Ing. Alejandro Celery 4 / 21
Qué nos produce?
Ing. Alejandro Celery 5 / 21
Objetivo
Diseñar y desarrollar unaherramienta de softwareque asista a losprogramadores desistemas embebidos en sufunción.
Ing. Alejandro Celery 6 / 21
Requerimientos
1 Representación visual del uso de lamemoria interna del MCU.
2 Fácil identificación de los principalesconsumos de memoria.
3 Indicación de a qué zona de memoriafue asignada cada variable
4 Presentación de estos datos dentro deuna ventana de Eclipse.
Ing. Alejandro Celery 7 / 21
Requerimientos
1 Representación visual del uso de lamemoria interna del MCU.
2 Fácil identificación de los principalesconsumos de memoria.
3 Indicación de a qué zona de memoriafue asignada cada variable
4 Presentación de estos datos dentro deuna ventana de Eclipse.
Ing. Alejandro Celery 7 / 21
Requerimientos
1 Representación visual del uso de lamemoria interna del MCU.
2 Fácil identificación de los principalesconsumos de memoria.
3 Indicación de a qué zona de memoriafue asignada cada variable
4 Presentación de estos datos dentro deuna ventana de Eclipse.
Ing. Alejandro Celery 7 / 21
Requerimientos
1 Representación visual del uso de lamemoria interna del MCU.
2 Fácil identificación de los principalesconsumos de memoria.
3 Indicación de a qué zona de memoriafue asignada cada variable
4 Presentación de estos datos dentro deuna ventana de Eclipse.
Ing. Alejandro Celery 7 / 21
Eclipse I - Firmware
Ing. Alejandro Celery 8 / 21
Eclipse II - Java
Ing. Alejandro Celery 9 / 21
Eclipse III - Memorias de trabajos finales
Ing. Alejandro Celery 10 / 21
Eclipse IV - Esta presentación!
Ing. Alejandro Celery 11 / 21
Partes componentes de Eclipse
Ing. Alejandro Celery 12 / 21
Herramientas de análisis de listas desímbolos
Así muestra la herramienta “nm” la lista de símbolosde un archivo binario:00049418 00000148 t _ProcEstadoInterfazBloqueada00070334 00000148 t _ControlaPresionSeteada08388612 00000010 D _umbralEstadosBateriaDescarga08388622 00000010 D _umbralEstadosBateriaCarga08388804 00000032 B _flags_t_svc08389492 00000032 B _flags_t_est
Ing. Alejandro Celery 13 / 21
Software actual para treemaps
Windirstat, software de uso actual para visualizar usode espacio en disco.
Ing. Alejandro Celery 14 / 21
Resultado deseado
Ing. Alejandro Celery 15 / 21
Demostración
Ing. Alejandro Celery 16 / 21
Algoritmo adoptado
Ing. Alejandro Celery 17 / 21
Configuración del plugin
Ing. Alejandro Celery 18 / 21
Validación
Ing. Alejandro Celery 19 / 21
Próximos pasos
Mejorar la precisión de la medición deespacio ocupado.
Incorporar las sugerencias de losbeta-testers.
Agrupación jerárquica de librerías ymódulos.
Distribución automatizada del plugin.
Ing. Alejandro Celery 20 / 21
Próximos pasos
Mejorar la precisión de la medición deespacio ocupado.
Incorporar las sugerencias de losbeta-testers.
Agrupación jerárquica de librerías ymódulos.
Distribución automatizada del plugin.
Ing. Alejandro Celery 20 / 21
Próximos pasos
Mejorar la precisión de la medición deespacio ocupado.
Incorporar las sugerencias de losbeta-testers.
Agrupación jerárquica de librerías ymódulos.
Distribución automatizada del plugin.
Ing. Alejandro Celery 20 / 21
Próximos pasos
Mejorar la precisión de la medición deespacio ocupado.
Incorporar las sugerencias de losbeta-testers.
Agrupación jerárquica de librerías ymódulos.
Distribución automatizada del plugin.
Ing. Alejandro Celery 20 / 21
Muchas gracias por su atención!
Ing. Alejandro Celery 21 / 21