Object-Capabilities and Physical Memory Mapping

François Goichon francois.goichon at insa-lyon.fr
Wed Oct 5 10:29:42 CEST 2011

As I did not answer to the list in the first place, I'll do it again.

> It's there at l4/pkg/io
I used the svn checkout command provided at 
http://os.inf.tu-dresden.de/L4Re/download.html which apparently contains 
a restricted number of packages. I just saw much more packages were 
provided within the snapshot tarball.

> You give it the cap to sigma0, but I won't go further, it's not supposed
> to be used by apps.
> Ned is the component that loads programs and sets up their initial
> environment, including caps. You cannot list them, but you do know them
> because they are specified in the loader script. Programs generally do
> not know anything about physical addresses or memory. The memory
> allocator provides you with memory in the form of dataspaces. Those
> dataspaces can be mapped into an address space. For device iomem io
> also provides a dataspace that gives you access to the mmio region of
> the devices the app is assigned to.
As my goal is to probably replace the standard io server implementation 
and to extend some kernel mechanics, I don't really want to base myself 
on L4re and its high level servers. I actuall want to understand and use 
the basic kernel mechanics. I would like to know how and where the 
sigma0 cap is granted to io and moe as well as some kernel interface / 
internal insights, if any documentation or example is available.

Thank you very much for those answers, the snapshot packages are already 
a good starting point for me.


More information about the l4-hackers mailing list