Subject: Re: direct copy() between two proc address spaces
To: None <tls@rek.tjls.com>
From: Jonathan Stone <jonathan@dsg.stanford.edu>
List: tech-kern
Date: 06/21/2004 16:59:59
In message <20040621234035.GA21410@panix.com>Thor Lancelot Simon writes
>On Mon, Jun 21, 2004 at 04:16:40PM -0700, Jason Thorpe wrote:
[...]

>> Passing a file descriptor pretty much means the memory is *not* 
>> anonymous, eh?
>
>No, not really, not if you take "anonymous" to mean "not backed by a
>file in the filesystem", which is what I believe most application
>programmers take MAP_ANON to mean.

'Xactly.  The idea (hands waving furiously) is to use the fd to find
the correct anon vm object. (Hence the part about making /dev/zero a
cloning device; not sure if that really helps or not).

Apologies to all concered if that was unclear.


[...]

>We can pass file descriptors between unrelated processes; mmap() takes a
>file descriptor as an argument, but ignores it if MAP_ANON; if we made it
>_not_ ignore it, maybe we could get somewhere here -- and even, maybe,
>move the sysv shm implementation into a library, which would be kinda cool
>all by itself.

Ayup. I had it on very good authority, but in possibly-failing memory
(cant remember who), that turning SYSV SHM into a userspace library
was the intent of the (Utah? Evans Hall?)  folks, some 15 years back.

I spose someone could ask Jay Lepreau or Mike Hibler what they were
planning. Assuming they still remember, that is.