A Program Optimization Method for Embedded Software Developed Using Open Sources

Sang-Young Cho (1)
(1) Hankuk University of Foreign Studies
Fulltext View | Download
How to cite (IJASEIT) :
Cho, Sang-Young. “A Program Optimization Method for Embedded Software Developed Using Open Sources”. International Journal on Advanced Science, Engineering and Information Technology, vol. 8, no. 4-2, Sept. 2018, pp. 1692-7, doi:10.18517/ijaseit.8.4-2.5569.
Program optimization or software optimization is the process of modifying a software system to make some aspect of it work more efficiently or use fewer resources. When developing software for embedded systems, open source libraries are usually used. An Embedded software built using a variety of open software and libraries is apt to have too many unused codes because open source libraries contain many functions and features to be used in various applications. In this paper, we describe the process of a library optimization method to reduce memory consumption for the user interface software of a set-top box product. The overall optimization process uses freeware tools developed for the Linux operating system. We devised an optimization technique to compensate for operation imperfections in the target system. The original Qt library of 19.57 MB was optimized to be 7.26 MB in program image size. In the case of the DirectFB library, 3.2 MB was reduced to 2.4 MB. The optimization process can be applied to any embedded software that are developed with open source libraries or sources.

S. Memeti, S. Pllana, A. Binotto, J. KoÅ‚odziej, and I. Brandic, “Using meta-heuristics and machine learning for software optimization of parallel computing systems: a systematic literature review,” Computing(2018), https://doi.org/10.1007/s00607-018-0614-9, Springer Vienna.

S. Sushko and A. Chemeris, “The dependence of microprocessor system energy consumption on software optimization,” in Proceedings of 2017 IEEE 37th International Conference on Electronics and Nanotechnology, pp. 451-454, Kiev, Ukraine, Apr. 2017.

A. K. Sarma, “New trends and challenges in source code optimization,” International Journal of Computer Applications, vol. 131, no. 16, pp. 27-32, Dec. 2015.

M. C. M. Neto, S. S. Andrade, and R. L. Novais, “Cross-platform multimedia application development: for mobile, web, embedded and IoT with Qt/QML,” in Proceedings of the 23rd Brazillian Symposium on Multimedia and the Web, pp. 23-26, Gramado, RS, Brazil, Oct. 2017.

H. Zeng, Z. Zhang, and L. Shi, “Research and implementation of video codec based on FFmpeg,” in Proceedings of the 2016 International Conference on Network and Information Systems for Computers, pp. 5-17, Wuhan, China, Apr. 2016.

M. P. Mariano, “Application-level virtual memory for object-oriented systems,” PhD Eng. thesis, Lille University of Science and Technology, France 2012.

G. Polito, “Virtualization support for application runtime specialization and extension,” PhD Eng. thesis, Lille University of Science and Technology, France 2015.

K. A. Marianna, R. O. Lhotí¡k, J. Dolby, and F. Tip, “Type-based call graph construction algorithms for Scala,” ACM Transactions on Software Engineering and Methodology, vol. 25, no. 1, pp. 1-43, Dec. 2015.

G.-H. Kang, Y. C. Kim, G. S. Yi, Y. S. Kim, Y. B. Park, and H. S. Son, “A practical study on code static analysis through open source based tool chains,” KIISE Transactions on Computing Practices, vol. 21, no. 2, pp. 148-153, Feb. 2015.

I. Giagkiozis, R. J. Lygoe, and P. J. Fleming, “Liger: an open source integrated optimization environment,” in Proceedings of the 15th Genetic and Evolutionary Computation Conference, Amsterdam, The Netherlands, pp. 1089-1096, July 2013.

S.-Y. Cho, “Library Optimization for Embedded Systems Using Open Tools,” in Proceedings of the 2018 International Conference on Electronics, Information and Communication, pp. 674-675, Hawaii, USA, Jan. 2018.

D. Grbić, M. VranjeÅ¡, B. KovaÄević, and M. MiloÅ¡ević, “Hybrid electronic program guide application for digital TV receiver,” in Proceedings of 2017 IEEE 7th International Conference on Consumer Electronics - Berlin, pp. 177-180, Berlin, Germany, Dec. 2017.

https://web.archive.org/web/20170603093935/http://directfb.net/

T. Csí©ri, “Examining structural correctness of documentation comments in C++ programs,” in Proceedings of 2015 IEEE 13th International Scientific Conference on Informatics, pp. 79-84, Poprad, Slovakia, Nov. 2015.

Y. Zheng , S. Kell , L. Bulej, H. Sun, and W. Binder, “Comprehensive multiplatform dynamic program analysis for Java and Android,” IEEE Software , vol. 33, Issue 4, pp. 55-63, Jul. 2016.

pmap, [Online]. Available: https://linux.die.net/man/1/pmap

M. Stevanovic, Chap. 12 Linux Toolbox, in Advanced C and C++ Compiling 1st Ed., Berkeley, CA: Apress, 2014.

A.-D. Schmidt, R. Bye, H.-G. Schmidt, J. Clausen, O. Kiraz, K. A. Yuksel, S. A. Camtepe, and S. Albayrak, “Static analysis of executables for collaborative malware detection on Android,” in Proceedings on IEEE International Conference on Communications, Dresden, Germany, Jun. 2009, https://doi.org/10.1109/ICC.2009.5199486, IEEE

Authors who publish with this journal agree to the following terms:

    1. Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License that allows others to share the work with an acknowledgement of the work's authorship and initial publication in this journal.
    2. Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgement of its initial publication in this journal.
    3. Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work (See The Effect of Open Access).