> On Tue, 2005-11-08 at 10:39 -0700, Christopher Nelson wrote:
> 
> > Yeah... I was thinking about that after I wrote it, and I 
> can see how 
> > that is the case.  Does the implementation simply have a 
> user-slidable 
> > window?  Something comparable to a seek, where I can now 
> access that 
> > memory from byte x to x+n where n is the window size?  Or is it 
> > automated in some fashion?
> 
> In EROS, it goes like this:
> 
> I'm holding a capability to a memory region that you provided.
> 
> I insert this capability into a known slot in my address 
> space structures. It is now mapped at a known location in my 
> address space.
> 
> I now reference it in the usual way using load/store instructions.

How is that different from:

-- Thread A --
share_id=share_memory(pointer_to_buffer, buffer_size);

send(endpoint, share_id);

-- Thread B --
share_id=recv(endpoint);

if is_acceptable(share_size(share_id)) pointer=accept_memory(share_id);
else reject_memory(share_id);





_______________________________________________
L4-hurd mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/l4-hurd

Reply via email to