L4 Mapping question

Robert Kaiser rob at sysgo.de
Mon Feb 22 13:49:03 CET 1999


Hi all,

I have a question regarding mapping in L4:

I read in the L4 reference manual that Sigma0 maps each page
only once. It does allow multiple mappings of a page to the
same address space (i.e. task), but it does not allow multiple
mappings to different tasks.

Is this a specific feature of Sigma0 or is this true of all
pagers ?

I'm asking because I wonder how the fpage_unmap operation
works: If a task is allowed to map a page to an unlimited
number of different tasks (i.e. 2047 as there are up to 2048
tasks), then the bookkeeping involved in implementing fpage_unmap
would require that a pager would theoretically need to keep
track of up to 2047 tasks per page in order to allow fpage_unmap
to revoke all mappings of a particular page.

That looks like a tremendous overhead, so there must either be
some limit to the number of mappings or there is something else
I'm missing.


Could someone please enlighten me about this ?

Thanks in advance

Rob

----------------------------------------------------------------
Robert Kaiser                          email: rkaiser at sysgo.de
SYSGO RTS GmbH
Carl-Zeiss-Str. 41                     phone: (49) 6131 9138-80
D-55129 Mainz / Germany                fax:   (49) 6131 9138-10




More information about the l4-hackers mailing list