> > The hashes and an array consisting of the reference count, a bit > > indicating if the page is in the kernel and another bit indicating if > > the page is allocated. > > I could perfectly well adopt exactly the same strategy, and use a > cheaper but less precise policy for dropping cached mappings, if there > is really concern about the memory consumption of two extra pointers > per mapping. > > Because mappings are cheaper, it is much less important to have > excellent long-term behavior. It is really the near-term things that > are important; the many successive operations on the same inode, for > example. In such a case, it is very unlikely that the drop random > mapping strategy will drop something actually in active use.
I am interested in the following detail of your plan: when do you drain the cache? When it is full? If we set the cache size to 2GB then you have a lot of mappings to manage. The hashes that I have are proportional to the size of the kernel cache. Neal _______________________________________________ Bug-hurd mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/bug-hurd