Subject: Re: CVS commit: src
To: Todd Vierling <tv@pobox.com>
From: Chris G. Demetriou <cgd@netbsd.org>
List: current-users
Date: 09/30/1998 11:51:28
Todd Vierling <tv@pobox.com> writes:
> On Wed, 30 Sep 1998, Jonathan Stone wrote:
> 
> : >And after all of that, there is nowhere a documented guarantee that the
> : >advice about memory usage actually does anything beneficial, particularly on
> : >higher load machines.
> : 
> : Uh, that is precisely where the semantic disagreement over "advisory"
> : is.  Does 'advisory' mean reasonable best-effort, or is a total no-op
> : good enough?
> 
> According to Solaris's own manpage:
> 
>      madvise() advises the kernel that a region  of  user  mapped
>      memory in the range [addr, addr + len) will be accessed fol-
>      lowing a type of pattern.  The kernel uses this  information
>      to  optimize  the procedure for manipulating and maintaining
>      the resources associated with the specified mapping range.
> 
> It goes on to describe Solaris's behavior for each option, all of which
> involve different handling of how (or whether) pages are retained in cache.
> 
> IMHO, this seems to indicate that best effort is good, and no-op is
> sufficient.

I just read the solaris manual page.

It specifically says "the kernel uses this information."  I don't see
any place to indicate that the kernel just throws it away, or actually
even that the kernel may ignore the advice, but it's unreasonable to
expect that the advice will be followed unconditionally.  However,
there is the bald statement that the kernel _does_ use the
information, rather than just throw it away.




cgd
-- 
Chris Demetriou - cgd@netbsd.org - http://www.netbsd.org/People/Pages/cgd.html
Disclaimer: Not speaking for NetBSD, just expressing my own opinion.
Plug: Get your official NetBSD-1.3.2 CDROM set today! http://www.netbsd.com/