TLSF: a new dynamic memory allocator for real-time systems
- 12 November 2004
- proceedings article
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Dynamic storage allocation (DSA) algorithms play an important role in the modern software engineering paradigms and techniques (such as object oriented programming). Using DSA increases the flexibility and functionalities of applications. There exists a large number of references to this particular issue in the literature. However, the use of DSA has been considered a source of indeterminism in the real-time domain, due to the unconstrained response time of DSA algorithms and the fragmentation problem. Nowadays, real-time applications require more flexibility: the ability to adjust system configuration in response to workload changes and application reconfiguration. This aspect adds value to the definition and implementation of dynamic storage allocation algorithms. Considering these reasons, DSA algorithms with a bounded and acceptable timing behaviour must be developed to be used by real-time operating systems (RTOSs). In this paper a DSA algorithm called two-level segregated fit memory allocator (TLSF), developed specifically to be used by RTOS, is introduced. The TLSF algorithm provides explicit allocation and deallocation of memory blocks with a temporal cost Θ(1).Keywords
This publication has 7 references indexed in Scilit:
- Real-time performance of dynamic memory allocation algorithmsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- An algorithm with constant execution time for dynamic storage allocationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- The memory fragmentation problemPublished by Association for Computing Machinery (ACM) ,1998
- Evaluating models of memory allocationACM Transactions on Modeling and Computer Simulation, 1994
- New methods for dynamic storage allocation (Fast Fits)Published by Association for Computing Machinery (ACM) ,1983
- Buddy systemsCommunications of the ACM, 1977
- Memory allocation in paging systemsPublished by Association for Computing Machinery (ACM) ,1973