Adaptive exact-fit storage management
Communications of the ACM
An efficient algorithm for heap storage allocation
ACM SIGPLAN Notices
Garbage collection in an uncooperative environment
Software—Practice & Experience
Fast allocation and deallocation of memory based on object lifetimes
Software—Practice & Experience
Improving the cache locality of memory allocation
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Using lifetime predictors to improve memory allocation performance
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
The measured cost of conservative garbage collection
Software—Practice & Experience
The impact of operating system structure on memory system performance
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
CustoMalloc: efficient synthesized memory allocators
Software—Practice & Experience
The software lookaside buffler reduces search overhead with linked lists
Communications of the ACM
Data Structure Techniques
New methods for dynamic storage allocation (Fast Fits)
SOSP '83 Proceedings of the ninth ACM symposium on Operating systems principles
LLM: A Low Latency Messaging Infrastructure for Linux Clusters
HiPC '02 Proceedings of the 9th International Conference on High Performance Computing
On a Tabling Engine That Can Exploit Or-Parallelism
Proceedings of the 17th International Conference on Logic Programming
On applying or-parallelism and tabling to logic programs
Theory and Practice of Logic Programming
Self-prevention of socket buffer overflow
Computer Networks: The International Journal of Computer and Telecommunications Networking
Enforcing provisioning and authorization policy in the Antigone system
Journal of Computer Security
MetaTM/TxLinux: transactional memory for an operating system
Proceedings of the 34th annual international symposium on Computer architecture
A critique of the GNU hurd multi-server operating system
ACM SIGOPS Operating Systems Review
Remote specialization for efficient embedded operating systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Implementation of a constant-time dynamic storage allocator
Software—Practice & Experience
A constant-time dynamic storage allocator for real-time systems
Real-Time Systems
Monitoring heritage buildings with wireless sensor networks: The Torre Aquila deployment
IPSN '09 Proceedings of the 2009 International Conference on Information Processing in Sensor Networks
Capability wrangling made easy: debugging on a microkernel with valgrind
Proceedings of the 6th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Lock-free parallel dynamic programming
Journal of Parallel and Distributed Computing
KAL: kernel-assisted non-invasive memory leak tolerance with a general-purpose memory allocator
Software—Practice & Experience
PacketShader: a GPU-accelerated software router
Proceedings of the ACM SIGCOMM 2010 conference
LISA'10 Proceedings of the 24th international conference on Large installation system administration
Improving resource-unaware SAT solvers
LPAR'10 Proceedings of the 17th international conference on Logic for programming, artificial intelligence, and reasoning
Ensuring operating system kernel integrity with OSck
Proceedings of the sixteenth international conference on Architectural support for programming languages and operating systems
Making the common case the only case with anticipatory memory allocation
FAST'11 Proceedings of the 9th USENIX conference on File and stroage technologies
Cache index-aware memory allocation
Proceedings of the international symposium on Memory management
Postmortem Debugging in Dynamic Environments
Queue - Programming Languages
Postmortem debugging in dynamic environments
Communications of the ACM
Making the common case the only case with anticipatory memory allocation
ACM Transactions on Storage (TOS)
A software reproduction of virtual memory for deeply embedded systems
ICCSA'06 Proceedings of the 6th international conference on Computational Science and Its Applications - Volume Part I
The myrmics memory allocator: hierarchical,message-passing allocation for global address spaces
Proceedings of the 2012 international symposium on Memory Management
Cache-aware memory manager for optimistic simulations
Proceedings of the 5th International ICST Conference on Simulation Tools and Techniques
Analyzing performance and power efficiency of network processing over 10 GbE
Journal of Parallel and Distributed Computing
Wire-speed statistical classification of network traffic on commodity hardware
Proceedings of the 2012 ACM conference on Internet measurement conference
Improving disk I/O performance in a virtualized system
Journal of Computer and System Sciences
Efficient protection of kernel data structures via object partitioning
Proceedings of the 28th Annual Computer Security Applications Conference
Back to the future: fault-tolerant live update with time-traveling state transfer
LISA'13 Proceedings of the 27th international conference on Large Installation System Administration
Efficient online memory error assessment and circumvention for Linux with RAMpage
International Journal of Critical Computer-Based Systems
Hi-index | 0.02 |
This paper presents a comprehensive design overview of the SunOS 5.4 kernel memory allocator. This allocator is based on a set of object-caching primitives that reduce the cost of allocating complex objects by retaining their state between uses. These same primitives prove equally effective for managing stateless memory (e.g. data pages and temporary buffers) because they are space-efficient and fast. The allocator's object caches respond dynamically to global memory pressure, and employ an object-coloring scheme that improves the system's overall cache utilization and bus balance. The allocator also has several statistical and debugging features that can detect a wide range of problems throughout the system.