I am new to L4 microkernels and I am reading the reference manual on version 2 of the interface. From what I've read so far the manual suggests that there's more than one pager, but if this is so what is the purpose of more than one pager?
Hi,
On 12/17/2010 04:59 PM, Ashford Nichols wrote:
I am new to L4 microkernels and I am reading the reference manual on version 2 of the interface. From what I've read so far the manual suggests that there's more than one pager, but if this is so what is the purpose of more than one pager?
A pager of a thread A is just the thread (portal, gate) to which the kernel delivers A's page-fault messages. Every thread has precisely one such pager but of course you can construct arbitrary complex scenarios on top of this mechanism. One typical scenario is what is called a region manager. The region manager thread acts as a pager for the threads in an address space and forwards their page-fault requests to the memory managers that are responsible for the individual regions of the address space (e.g., code, memory mapped files or anonymous memory such as stack or heap). Unfortunately, we sometimes call the latter "pager" because they are meant to actually resolve the page-faults.
Hope this helps
Marcus
l4-hackers@os.inf.tu-dresden.de