Lines Matching refs:is
8 BGET is a comprehensive memory allocation package which is easily
9 configured to the needs of an application. BGET is efficient in both
12 consolidates contiguous space to minimise fragmentation. BGET is
37 system incorporating garbage collection is constructed. BGET
45 And yet, it is substantially more efficient than the native allocation
63 BGET is written in as portable a dialect of C as possible. The only
64 fundamental assumption about the underlying hardware architecture is
65 that memory is allocated is a linear array which can be addressed as a
71 number of separate buffer pools, there is no limit on the total storage
97 allocation (which is usually not worth it in other environments).
102 If the C library malloc() function is too slow, not present in your
130 compaction function has been supplied. If so, it is called (with the
133 looping). If the compaction function is able to free any storage (it
140 space, or no compaction function is defined, BGET next tests whether a
142 function is called with an argument indicating how many bytes of
150 a non-NULL release function is supplied, expansion blocks which become
156 strategies, including garbage collection. (Note, however, that BGET is
176 Allocate a buffer of <size> bytes. The address of the buffer is
183 address of the buffer is returned, or NULL if insufficient memory was
189 <newsize> and preserving all existing data. NULL is returned if
190 insufficient memory is available to reallocate the buffer, in which case
207 become empty. If <compact> is non-NULL, whenever a buffer allocation
212 attempting to satisfy this allocation request. The sequence number is 1
217 is re-tried. If <compact> returns 0 (as it must if it isn't able to
220 <acquire> argument is non-NULL. At the time the <compact> function is
221 called, the state of the buffer allocator is identical to that at the
234 If <acquire> is non-NULL, that function will be called whenever an
250 The amount of space currently allocated is stored into the variable
252 in the pool) is stored into the variable pointed to by <totfree>, and
253 the size of the largest single block in the free space pool is stored
276 The buffer pointed to by <buf> is dumped on standard output.
282 <dumpalloc> is nonzero, the contents of allocated buffers are dumped; if
283 <dumpfree> is nonzero, the contents of free blocks are dumped.
287 The named buffer pool, previously initialised by a call on bpool(), is
290 is returned if the pool is valid, 0 if an error is found.