Re: mapping pages into new address spaces

Espen Skoglund <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.l4ka.general
Message-ID <[email protected]>
[Joshua Haberman]
> What I am proposing is to make the second case more like the first.
> Make all MapItem/GrantItem IPCs that come from a thread's pager
> behave like IPCs sent in response to page faults, namely:

> 1. they are not subject to a thread's acceptor
> 2. they automatically take effect without being explicitly received

In effect, what you're proposing is to add some special case where L4
IPC is no longer synchronous.  L4 IPC is synchronous for a good
reason.  It is *the* major reason why IPC can be implemented
efficiently.  Introducing such asynch IPCs also opens up a whole can
of worms in the implementation itself, not to mention the mess you
make out of the API specification.  Just treat the pagefault protocol
as regular IPCs.  Avoid special cases.  This gives you the simplest
and most efficient implementation.

> The one downside of this is that it counts on the thread to set its
> acceptor properly, or the pager's fpage will go to the wrong place.
> It seems like a pager should have complete control over its threads'
> address spaces, and be able to map things wherever it wants,
> whenever it wants to.

If the thread sets its acceptor to the entire address space, how can
the pager's fpage go to the wrong place?  If the programmer is not
able to set the acceptor to L4_CompleteAddressSpace then he should
seriously consider to take up gardening, news reporting, accounting,
or some such instead.

> Does this make sense?

No.  Not really.  Sorry.  ;-)

	eSk
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.