Hi, I'm writing a memory manager and in order to make eviction decisions, I want to use the status bits. Because I'm a good citizen, I've written my memory manager to get the largest mappings possible from sigma0. My resource manager, however, sub-divides these pages and maps them to clients.
I suspect (but please confirm) that my resource manager is only able to get the status bits for the mappings that it received from its pager, not the mappings it sent to its clients. That is, if it got a 64MB fpage from sigma0, even though it may have only handed out 4KB pages to clients, there is only a single status bit available to it: the one for the 64MB page. Is this interpretation correct? If so, it seems that if I want status bits for the pages that the resource manager maps to its clients, then I have to be careful to only map pages of the same size as the ones the manager has. I imagine that I can request new mappings from sigma0 as appropriate, but this basically defeats the advantage of having mapped the superpages to begin with--most mappings will be small and thus the address space with quickly be filled with small mappings. Plus, with this approach, there is the overhead of the cost of the unmap and re-map operations. Thanks, Neal _______________________________________________ L4-hurd mailing list [email protected] http://lists.gnu.org/mailman/listinfo/l4-hurd
