Analisador de Código Java para Estimação da Eficiência de Software Embarcado
Resumo
Com o avanço da complexidade dos sistemas embarcados, utilizados nas mais diversas aplicações, cada vez mais são utilizadas soluções baseadas em software. Desta forma, torna-se indispensável o desenvolvimento de ferramentas que auxiliem no processo do desenvolvimento de software para sistemas embarcados. Esse artigo apresenta uma ferramenta para análise de aplicações Java desenvolvidas para sistemas embarcados. A ferramenta baseia-se na análise dos bytecodes gerados pelas aplicações Java. A análise produz uma série de estatísticas sobre os bytecodes e de requisitos não funcionais como desempenho e consumo de energia. Um conjunto de experimentos foi realizado baseado em aplicações utilizadas em sistemas embarcados.
Referências
CMP Media "State of embedded market survey " 2006.
Oracle. OpenJDK "http://openjdk.java.net/ " 2011.
Z. Wang and A. Herkersdorf "Software performance simulation strategies for high-level embedded system design " Perform. Eval. vol. 67 pp. 717-739 August 2010. [Online]. Available: http://dx.doi.org/10.1016/j. peva.2009.07.003
T. Meyerowitz and et al. "Source-level timing annotation and simulation for a heterogeneous multiprocessor " in Design Automation and Test in Europe 2008. DATE '08 march 2008 pp. 276 -279.
T. Kempf and et al. "A sw performance estimation framework for early system-level-design using fine-grained instrumentation " in Design Automation and Test in Europe 2006. DATE '06. Proceedings vol. 1 march 2006 p. 6 pp.
U. Correa and et al. "Towards estimating physical properties of embedded systems using software quality metrics " in Computer and Information Technology (CIT) 2010 IEEE 10th International Conference on 29 2010-july 1 2010 pp. 2381-2386.
Jboss Community. JBoss Profiler "http://docs.jboss.org/ jbossprofiler/doc/ " 2011.
Oracle. Java Virtual Machine Profiler Interface "http://download- llnw.oracle.com//javase/1.4.2/docs/guide/jvmpi/ " 2011.
EJ-Technologies. JProfiler "http://www.ej-technologies.com " 2011.
Netbeans Profiler "http://netbeans.org/features/java//profiler. html " 2011.
Oracle. JVM Tool Interface (JVMTI) "http://download.oracle.com/ javase/1.5.0/docs/guide/jvmti/ " 2011.
JavAssist. JavAssist "http://www.csg.is.titech.ac.jp/chiba// javassist/ " 2011.
Serp. Serp. "http://serp.sourceforge.net/ " 2011.
Apache Jakarta Project. Byte Code Engineering Library "http://jakarta.apache.org/bcel/ " 2011.
M. F. S. Oliveira and et al. "Multi-objective design space exploration based on uml " in Workshop on UML for SoC 2006. UMLSoC2006 2006 pp. 11-16.
R. M. Redin and et al. "On the use of software quality metrics to improve physical properties of embedded systems " in DIPES ser. IFIP B. Kleinjohann L. Kleinjohann and W. Wolf Eds. vol. 271. Springer 2008 pp. 101-110.
A. Mangalampalli and A. K. Jain "Correlation of Inheritance-Based Object-Oriented Metrics and Low-Level Metrics " ICFAI Journal of Systems Management vol. 5 no. 1 pp. 7-15 2007.
J. C. B. Mattos and L. Carro "Object and method exploration for embedded systems applications " in Proceedings of the 20th annual conference on Integrated circuits and systems design ser. SBCCI '07. New York NY USA: ACM 2007 pp. 318-323. [Online]. Available: http://doi.acm.org/10. 1145/1284480.1284564
S. A. Ito L. Carro and R. P. Jacobi "Making Java Work for Microcontroller Applications " IEEE Des. Test vol. 18 no. 5 pp. 100-110 2001. (Pubitemid 32903097)
SPEC "Java Virtual Machine Benchmark - SPECjvm2008 " 2008.
T. Welch "A technique for high-performance data compression " Computer vol. 17 no. 6 pp. 8 -19 june 1984.