arrow
返回

A high-performance memory allocator for object-oriented systems

delete1996-03-01
delete36
PRE
AI
J
J. Morris Chang *
E
Edward F. Gehringer
DOI:10.1109/12.485574delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Object-oriented programming languages tend to allocate and deallocate blocks of memory very frequently. The growing popularity of these languages increases the importance of high-performance memory allocation. For speed and simplicity in memory allocation, the buddy system has been the method of choice for nearly three decades. A software realization incurs the overhead of internal fragmentation and of memory traffic due to splitting and coalescing memory blocks. This paper presents a simple hardware design for buddy-system allocation that takes advantage of the speed of a pure combinational-logic implementation. Two binary trees formed by anding and oring propagate information about the allocation status of blocks and subblocks. They implement a nonbacktracking search for the address of the first free block that is large enough to satisfy a request. Although the buddy system may allocate a block that is much larger than the requested size, the logic that finds a free block can be augmented by a ''bit-flipper'' to relinquish the unused portion at the end of the block. This effectively eliminates internal fragmentation. Simulation results show that the buddy system modified in this way uses less memory in most, though not all, programs than the unmodified buddy. Hence, the hardware buddy-system allocator is faster and uses memory more efficiently than the standard software approach.
Keyword:
buddy system
object-oriented systems
bit-vector allocation
binary tree
dynamic memory management
internal fragmentation

期刊

IEEE Transactions on Computers 封面图
IEEE Transactions on Computers
IF:
3.8
论文数:
5.4K
被引数:
9.8K

机构

暂无机构信息
引用论文

引用论文

err分享
err收藏
Effectiveness of acupuncture in rehabilitation of physical and functional disorders of women undergoing breast cancer surgery
err2015-12-15
err0
PREAI
errPatricia Santolia Giron; Cinira Assad Simão Haddad; Samantha Karlla Lopes de Almeida Rizzi; Afonso Celso Pinto Nazário; Gil Facina
err分享
err收藏
A FAST STORAGE ALLOCATOR
err1965-10-01
err208
errOAAI
errKNOWLTON, KC
err分享
err收藏
BUDDY SYSTEMS
err1977-06-01
err93
errOAAI
errPETERSON, JL; NORMAN, TA
err分享
err收藏
没有更多内容