1995
DOI: 10.1007/3-540-60368-9_19
|View full text |Cite
|
Sign up to set email alerts
|

Dynamic storage allocation: A survey and critical review

Abstract: Abstract. Dynamic memory allocation has been a fundamental part of most computer systems since roughly 1960, and memory allocation is widely considered to be either a solved problem or an insoluble one. In this survey, w e describe a variety of memory allocator designs and point out issues relevant to their design and evaluation. We then chronologically survey most of the literature on allocators between 1961 and 1995. Scores of papers are discussed, in varying detail, and over 150 references are given. We arg… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

2
404
0
19

Year Published

1997
1997
2020
2020

Publication Types

Select...
7
1

Relationship

0
8

Authors

Journals

citations
Cited by 359 publications
(430 citation statements)
references
References 94 publications
2
404
0
19
Order By: Relevance
“…Such behavior has important implications for memory management. In particular, it makes sense to cache freed blocks in anticipation of additional requests for the same size [732].…”
Section: Examples and Visualizationmentioning
confidence: 99%
See 1 more Smart Citation
“…Such behavior has important implications for memory management. In particular, it makes sense to cache freed blocks in anticipation of additional requests for the same size [732].…”
Section: Examples and Visualizationmentioning
confidence: 99%
“…In terms of system behavior it is possible to envision schedulers that exploit the short-range regularity of localized workloads, and adapt their behavior to best suit the current workload [243,754,668,755,694]. This is similar to recent approaches used in memory allocators, which cache freed blocks in anticipation of future requests for the same block sizes [732].…”
Section: Importancementioning
confidence: 99%
“…Successful examples include the Lea allocator in Linux based systems [6], the Buddy allocator for Unix based systems [6] and variations of the Kingsley allocator in Windows XP [13] and FreeBSD based systems. Their embedded OS counterparts include the DM allocators of Symbian [11], Enea OSE [10], uClinux [9] and Windows CE [12].…”
Section: Related Workmentioning
confidence: 99%
“…This space is not used to store the application's data and can not be used for a future memory request. This is called internal fragmentation, which is common in requests of small memory blocks [6]. It can be prevented or reduced with the use of freelists, the best fit policy and the splitting mechanism, which will be analyzed in detail in the next section.…”
Section: Memory Fragmentationmentioning
confidence: 99%
“…There is a large body of work concerning general garbage collection techniques [36,64] and escape analysis for improving stack allocation in garbage collected systems [9,26]. The additional complexity of region inference and the polymorphic multiplicity analysis implemented in the ML Kit [8] allow more objects to be stack allocated than does traditional escape analyses, which allows only local, non-escaping values to be stack allocated.…”
Section: Related Workmentioning
confidence: 99%