Naive question about grant/map

Kevin Elphinstone kevine at
Thu Dec 11 05:56:45 CET 2003

Hi All, time to play catch up now exam marking etc is over. I apologise in
advance if this has be pointed out in another thread.

Just a small, but important point relating to the statement below.

The L4 mapping database is NOT strictly a cache, but it can be used to
implement cache-like behaviour which is usually what is done in most
systems. Kernel mappings are a dynamic subset of things defined at
user-level. However, in kernel mapping can be used to indirectly define an
address space or region of an address space (if, for example, you what to
avoid faults). I.e. it can equal or be a superset of what is defined at
user-level. However, doing so requires carefully crafted and coordinated
pager behaviour/protocol. 

You can term it a (large) cache with mechanisms to control its population,
but it is not exactly a "cache" in the terms usual sense of the word. 

	- Kevin

> 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
> _______________________________________________
> l4-hackers mailing list
> l4-hackers at

More information about the l4-hackers mailing list