Browse > Article

Budgeted Memory Allocator for Embedded Systems  

Lee, Jung-Hee (Telecommnuication R&D Center, Samsung Electronics)
Yi, Joon-Hwan (Telecommnuication R&D Center, Samsung Electronics)
Publication Information
Abstract
Dynamic memory allocators are used for embedded systems to increase flexibility to manage unpredictable inputs and outputs. As embedded systems generally run continuously during their whole lifetime, fragmentation is one of important factors for designing the memory allocator. To minimize fragmentation, a budgeted memory allocator that has dedicated storage for predetermined objects is proposed. A budgeting method based on a mathematical analysis is also presented. Experimental results show that the size of the heap storage can be reduced by up to 49.5% by using the budgeted memory allocator instead of a state-of-the-art allocator. The reduced fragmentation compensates for the increased code size due to budgeted allocator when the heap storage is larger than 16KB.
Keywords
Memory allocator; dynamic memory management; embedded system;
Citations & Related Records
연도 인용수 순위
  • Reference
1 M. Masmano et al., "TLSF: a New Dynamic Memory Allocator for Real-Time Systems," in Proc. of Euromicro Conference on Real-Time Systems, pp,.79-86, Catania, Italy, June, 2004
2 D. Atienze et al., "Dynamic Memory Management Design Methodology for Reduced Memory Footprint in Multimedia and Wireless Network Applications," in Proc. of Design, Automation and Test in Europe, pp.532-537, Acropolis, France, April, 2004.
3 H. Zhe et al., "Design and Realization of Efficient Memory Management for Embedded Real-Time Application," in Proc. of International Conference on ITS Telecommunications, pp.174-177, Chengdu, China, June, 2006
4 Delorie software, Available: http://www.delorie.com
5 RVCT 2.2. Available: http://www.arm.com
6 J. Bonwick, "The Slab Allocator: An Object-Caching Kernel Memory Allocator, " in Proc. of USENIX Technical Conference, pp.87-98, Boston, USA, June, 1994
7 B. Zorn and D. Grunwald, "Evaluating Models of Memory Allocation," in ACM Transactions on Modeling and Computer Simulation, Volume 4, Issue 1, pp.107-131, January, 1994   DOI
8 P. Wilson et al., "Dynamic Storage Allocation: A Survey and Critical Review," Technical Report, Department of Computer Science, Univ. of Texas, Austin, 1995
9 M. Tofte and J. Talpin, "Region-Based Memory Management," in Information and Computation, Volume 132, Issue 2, pp. 109-176, February, 1997   DOI   ScienceOn
10 E. Berger, B. Zorn, and K. McKinley, "Composing High-Performance Memory Allocators," in Proc. of ACM SIGPLAN Conference on Programming Language Design and Implementation, pp.114-124, Snowbird, USA, June, 2001   DOI
11 M. Seidl and B. Zorn, "Segregating Heap Objects by Reference Behavior and Lifetime," in Proc. of International Conference on Architectural Support for Programming Languages and Operating Systems, pp.12-23, San Jose, USA, October, 1998
12 D. Lea, A memory allocator, Available: http://g.oswego.edu/dl/html/malloc.html
13 Y. Hasan and J. Chang, "A Hybrid Allocator," in Proc. of IEEE International Symposium on Performance Analysis of Systems and Software, pp.214-222, Austin, USA, March, 2003
14 E. Berger, B. Zorn, and K. McKinley, "Reconsidering Custom Memory Allocation," in Proc. of ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp.1-12, Seattle, USA, November, 2002   DOI