Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 Jan 1997 03:38:06 +0100 (MET)
From:      cracauer@wavehh.hanse.de (Martin Cracauer)
To:        terry@lambert.org (Terry Lambert)
Cc:        cracauer@wavehh.hanse.de, rminnich@Sarnoff.COM, freebsd-hackers@FreeBSD.ORG
Subject:   Re: Using rfork() / threads
Message-ID:  <9701310238.AA28758@wavehh.hanse.de>
In-Reply-To: <199701302345.QAA00636@phaeton.artisoft.com> from "Terry Lambert" at Jan 30, 97 04:45:10 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> 
> > >VM space handling is a little different. If you request VM space sharing,
> > >you don't exactly get Vm address space sharing:  what you get is instead
> > >shared data areas where in normal fork they are copied. More details on 
> > >request. The effect is what you want, though: shared data areas. 
> > 
> > Could you explain a bit more. What exactly is the difference between
> > VM space sharing and shared data areas from the process' and the
> > kernel perspective?
> 
> The per process open file table points to the same location, for one
> (that's actually a biggie).  If I open a file in one process, it is
> open for both processes.  If I close it, it's closed.  There is one
> fd offset associated with the object -- if one process writes it,
> the offset is advanced, and if the other writes it, it's advanced
> again.  There is a potential race as to who gets to do the write.

Sure, so much is clear. 

But the original comment quoted topmost sounded like there are two
sperate concepts called "VM address speace sharing" and "shared data
areas", which is the same thing for me. Maybe one the these terms
implies that one of them has resources like the descriptor table on
board and the other not, but then I never heard of this term usage.

Hence my question.

Martin
-- 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin Cracauer <cracauer@wavehh.hanse.de>
http://cracauer.cons.org
Fax +49 40 522 85 36 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9701310238.AA28758>