Question about memory management in L4 Fiasco O.C + L4re

Adam Lackorzynski adam at os.inf.tu-dresden.de
Thu Jul 16 23:40:14 CEST 2015


Hi,

On Wed Jul 15, 2015 at 11:53:50 +0200, Mahdi Aichouch wrote:
> I have some questions concerning memory management in Fiasco O.C  + L4re.
> 
> I would like to test two L4Linux instances, and for each L4Linux
> instance I want to reserve one static fixed physical memory partition.
> 
> For instance, one 128MB for the first L4Linux and one 128MB for the second.
> 
> Knowing that Fiasco O.C. uses "on demand paging" to allocate pages for
> user tasks, is it possible that each partition of L4Linux could be allocated
> a static physical memory region composed of contiguous physical frames.

This is actually the default behavior. L4Linux is acquiring physical
contiguous memory and this is also static, i.e. it is not changing
afterwards.

> For instance, one memory region starting from 128MB to 256MB for the first
> L4Linux,
> and second memory region from 256MB to 512MB for the second L4Linux.
> Each memory region is allocated exclusively to one L4Linux instance.

The memory regions are exclusive. Specifying exactly which physical
memory an L4Linux is getting is currently not possible but I guess
you're using the numbers just as an example?

> I would like to know if it is possible to load all the code + data of a
> L4Linux instance
> into its reserved memory partition, so no page fault will be encountered
> during runtime.

The memory is completely mapped initially, so no page fault should
happen. As probably nobody will take it away again it should also stay
like this. 

> Is it possible to tell me if these above operations could be realized in
> Fiasco O.C and L4re?
> 
> If the answer is yes, is it possible to tell me what are the objects that
> should be used or
> adapted in order to implement these?

You can put showpfexc=1 on the cmdline to see any in-kernel page fault.
There shouldn't be any (except in the outside wrapper code as I see
which can be changed by launching L4Linux with the eager_map flag).





Adam
-- 
Adam                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/




More information about the l4-hackers mailing list