Browse > Article
http://dx.doi.org/10.4218/etrij.11.0110.0268

Improving Memory Efficiency of Dynamic Memory Allocators for Real-Time Embedded Systems  

Lee, Jung-Hee (Department of Electrical and Computer Engineering, Georgia Institute of Technology)
Yi, Joon-Hwan (Department of Computer Engineering, Kwangwoon University)
Publication Information
ETRI Journal / v.33, no.2, 2011 , pp. 230-239 More about this Journal
Abstract
Dynamic memory allocators for real-time embedded systems need to fulfill three fundamental requirements: bounded worst-case execution time, fast average execution time, and minimal fragmentation. Since embedded systems generally run continuously during their whole lifetime, fragmentation is one of the most important factors in designing the memory allocator. This paper focuses on minimizing fragmentation while other requirements are still satisfied. To minimize fragmentation, a part of a memory region is segregated by the proposed budgeting method that exploits the memory profile of the given application. The budgeting method can be applied for any existing memory allocators. Experimental results show that the memory efficiency of allocators can be improved by up to 18.85% by using the budgeting method. Its worst-case execution time is analyzed to be bounded.
Keywords
Dynamic storage management; main memory; real-time systems;
Citations & Related Records

Times Cited By Web Of Science : 0  (Related Records In Web of Science)
Times Cited By SCOPUS : 1
연도 인용수 순위
  • Reference
1 ARM Ltd., RealView Compilation Tools (RVCT) 2.2. Available: http://www. arm.com
2 B. Zorn and D. Grunwald, "Evaluating Models of Memory Allocation," ACM Trans. Modeling Computer Simulation, vol. 4, no. 1, Jan. 1994, pp. 107-131.   DOI
3 M. Masmano et al., "TLSF: A New Dynamic Memory Allocator for Real-Time Systems," Proc. Euromicro Conf. Real-Time Syst., Catania, Italy, June 2004, pp. 79-88.
4 P. Wilson et al., "Dynamic Storage Allocation: A Survey and Critical Review," Technical Report, Department of Computer Science, Univ. of Texas, Austin, 1995.
5 D. Lea, A Memory Allocator. Available: http://g.oswego.edu/dl/html/malloc.html
6 T. Ogasawara, "An Algorithm with Constant Execution Time for Dynamic Storage Allocation," Proc. 2nd Int. Workshop Real-Time Computing Syst. Appl., 1995, pp. 21-25.
7 M. Tofte and J. Talpin, "Region-Based Memory Management," Inf. Computation, vol. 132, no. 2, Feb. 1997, pp. 109-176.   DOI   ScienceOn
8 J. Bonwick, "The Slab Allocator: An Object-Caching Kernel Memory Allocator," Proc. USENIX Technical Conf., Boston, USA, June 1994, pp. 87-98.
9 A. Eswaran and R. Rajkumar, "Energy-Aware Memory Firewalling for QoS-Sensitive Applications," Proc. Euromicro Conf. Real-Time Syst., 2005, pp. 11-20.
10 Delorie software. Available: http://www.delorie.com/djgpp/malloc
11 Y. Hasan and J. Chang, "A Hybrid Allocator," Proc. IEEE Int. Symp. Performance Anal. Syst. Software, Austin, USA, Mar. 2003, pp. 214-222.
12 E. Berger, B. Zorn, and K. McKinley, "Reconsidering Custom Memory Allocation," Proc. ACM Conf. Object-Oriented Programming, Syst., Languages, Appl., Seattle, USA, Nov. 2002, pp. 1-12.
13 H. Zhe, Z. Jun, and L. Xiling, "Design and Realization of Efficient Memory Management for Embedded Real-Time Application," Proc. Int. Conference ITS Telecommun., Chengdu, China, June 2006, pp. 174-177.
14 M. Seidl and B. Zorn, "Segregating Heap Objects by Reference Behavior and Lifetime," Proc. Int. Conf. Architectural Support for Programming Languages Operating Syst., San Jose, USA, Oct. 1998, pp. 12-23.
15 M. Ramakrishna et al., "Smart Dynamic Memory Allocator for Embedded Systems," Proc. Int. Symp. Computer Inf. Sci., 2008, pp. 1-6.
16 D. Atienze et al., "Dynamic Memory Management Design Methodology for Reduced Memory Footprint in Multimedia and Wireless Network Applications," Proc. Design, Automation and Test in Europe, Acropolis, France, Apr. 2004, pp. 532-537.
17 Carbon Design Systems, SoC Designer. Available: http://carbondesignsystems. com/Products/SoCDesigner.aspx
18 A. Marchand et al., "Memory Resource Management for Realtime Systems," Proc. Euromicro Conf. Real-Time Systems, Pisa, Italy, July 2007, pp. 201-210.