l4-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Questions about copy-on-write


From: Sam Mason
Subject: Re: Questions about copy-on-write
Date: Wed, 27 Oct 2004 20:37:21 +0100
User-agent: Mutt/1.5.6i

Bas Wijnen wrote:
>If a task (physmem) mapped memory to some other task, it can unmap it at 
>any time it likes, and the other task isn't notified.

I wasn't expecting that, and it seems to imply that every page has
at most single owning task.  I wouldn't have thought that L4 would
like to maintain state like that!

>There is no difference between two capabilities, so 
>when a capability is copied, there is no difference between the two 
>tasks anymore, as you said.

I hadn't got quite as far as capabilities yet.  I think I should start
inscribing the words "Don't Panic" in large friendly letters on all
possible surfaces it's possible to inscribe things upon.  Only then
should I venture further!

>In many cases, this will not be what you want.  Instead, you want the 
>other task to be able to read, but not write the container.  Or you want 
>it to be able to read and write, but not the add or remove pages.  For 
>such situations you can make a proxy capability object.  You don't copy 
>the container capability to the other task, but instead give it a 
>capability from yourself.  Any request made with it is checked, and if 
>it's ok, passed on to the container.

Sounds like the logical solution.  I'm not sure how the mechanics
of forwarding on the IPC would work, but I'm sure I'll get there
in a bit and it'll be as much fun to figure out as containers have
been!

Thanks everyone,
  Sam




reply via email to

[Prev in Thread] Current Thread [Next in Thread]