I was speaking of the 4.4 BSD.  FreeBSD has the merged VM, and I think
NetBSD only recently did that.  BSD/OS does do the locking by default
and it maps into the kernel address space.  I believe FreeBSD has a
sysctl to control locking of SysV memory.

One advantage of having it all at the same VM address is that they can
use the same page tables for virtual address lookups.


Curt Sampson wrote:
> On Wed, 12 Feb 2003, Bruce Momjian wrote:
> > Christopher Kings-Lynne wrote:
> >
> > > You cannot change SHMMAX on the fly on FreeBSD.
> >
> > And part of the reason is because some/most BSD's map the page tables
> > into physical RAM (kernel space) rather than use some shared page table
> > mechanism. This is good because it prevents the shared memory from
> > being swapped out (performance disaster).
> Not at all! In all the BSDs, as far as I'm aware, SysV shared memory is
> just normal mmap'd memory.
> FreeBSD offers a sysctl that lets you mlock() that memory, and that is
> helpful only because postgres insists on taking data blocks that are
> already in memory, fully sharable amongst all back ends and ready to be
> used, and making a copy of that data to be shared amongst all back ends.
> > It doesn't actually allocate RAM unless someone needs it, but it does
> > lock the shared memory into a specific fixed location for all processes.
> I don't believe that the shared memory is not locked to a specific VM
> address for every process. There's certainly no reason it needs to be.
> cjs
> -- 
> Curt Sampson  <[EMAIL PROTECTED]>   +81 90 7737 2974   http://www.netbsd.org
>     Don't you know, in this new Dark Age, we're all light.  --XTC

  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly

Reply via email to