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@sysgo.de SYSGO RTS GmbH Carl-Zeiss-Str. 41 phone: (49) 6131 9138-80 D-55129 Mainz / Germany fax: (49) 6131 9138-10