Naive question about grant/map

Jonathan S. Shapiro shap at eros-os.org
Fri Dec 5 21:24:49 CET 2003


On Fri, 2003-12-05 at 12:34, Joshua LeVasseur wrote:
> On Dec 5, 2003, at 17:21, Jonathan S. Shapiro wrote:
> One can look at the mapping database as providing a mechanism for the 
> kernel to handle operations which would be too expensive from user 
> level, as long as those operations require no policy decisions.  So the 
> mapping database evicts entries when a policy decision might be 
> necessary (or if the implementation becomes too hairy).
> 
> If a mapping is missing from the kernel's cache, then a policy decision 
> is necessary from user-level.  The policy decision can be requested via 
> a page fault request; the kernel synthesizes a page fault message to 
> the faulting process's pager...

> Hope my ramblings helped,
> Josh
> 

This was VERY helpful. It assists me in understanding a number of points
of confusion that I have had in previous discussions with various L4
people.

What you describe is one of the key differences between the L4 and EROS
designs. As I am coming to understand L4 better, I'm coming to think
that it is the only really *important* difference between the two
architectures:

  -  In EROS, a node tree DEFINES an address space. Since it
     is the ultimate defining data structure, it can be paged
     but not discarded (or at least, not without losing the
     mappings).

  -  In L4, the mapping table is a cache of things defined at
     user level.


shap





More information about the l4-hackers mailing list