Memory-block coalescing based on run-time demand monitoring
AssigneeSun Microsystems, Inc.
InventorsRoss C. Knippel, Steven K. Heller, David L. Detlefs
Life of this patent
Estimating the term…
Loading patent…
AssigneeSun Microsystems, Inc.
InventorsRoss C. Knippel, Steven K. Heller, David L. Detlefs
Estimating the term…
A computer system (10) implements a memory allocator that employs a data structure (FIG. 3) to maintain an inventory of dynamically allocated memory available to receive new data. It receives from one or more programs requests that it allocate memory from a dynamically allocable memory “heap.” It responds to such requests by performing the requested allocation and removing the thus-allocated memory block from the inventory. Conversely, it adds to the inventory memory blocks that the supported program or programs request be freed. In the process, it monitors the frequencies with which memory blocks of different sizes are allocated, and it projects from those frequencies future demand for different-sized memory blocks. When it needs to coalesce multiple smaller blocks to fulfil an actual or expected request for a larger block, it bases its selection of which constituent blocks to coalesce on whether enough free blocks of a constituent block's size exist to meet the projected demand for them.
For satisfying requests for dynamic allocation of blocks of a computer system's computer memory, a method that includes:
A storage medium containing instructions readable, by a computer system that makes allocation requests, to configure the computer system to operate as an allocator that:
A computer system that makes allocation requests, includes computer memory, and comprises:
A computer signal representing sequences of instructions that, when executed by a computer system, cause it to operate as an allocator that:
A computer system that makes allocation requests, includes computer memory, and includes:
Dependencies are inferred from the claim text.