Re: FreeBSD malloc.c, -lmalloc, and squid.

From: John S. Dyson <toor@dont-contact.us>
Date: Tue, 27 Aug 1996 12:34:40 -0500 (EST)

>
> Secondly, the sbrk()-based system recovery of memory assumes too
> much allocation locality: the recovery of memory (via sbrk() back
> to the system) can only occur at the end of the allocation region.
>
Actually, we have an madvise(2) in current that supports "freeing" pages, but
keeping the VM space. That doesn't do EXACTLY what you say above, but
it can help. I have been running with an augmented version of
phkmalloc with that change for a long time now.

>
> I would like to see an extention to the mmap() semantics for sparse
> reclaimation on a per-page basis: When a full page is no longer on
> use, it would be returned individually to the system.
>
You can do an munmap that does not correspond directly to an mmap. Also,
as I said above, we have an madvise(2) call (arg:MADV_FREE) that releases
the page, without giving up the vm space. Specifically, the page is
marked clean, and might/might-not be demand-zeroed the next time that you
use it.

John
Received on Tue Aug 27 1996 - 10:45:20 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:32:52 MST