Re: mmap behavior



Can you explain your outer problem. Why do you need somehing else to
reserve space for shared mappings? Why don't you just do it, by not
using the space you consider reserved?

This reservation is performed by a 3rd party product (ObjectStore).
This reserved address space range is then used for retrieving objects
from an ObjectStore database, through a "swap-like" mechanism.

ObjectStore maps/unmaps pages containing objects in this region as
reads/writes/commits are performed on the database. It is responsible
for determining the right address within the range (depending on the
object size, etc). So address space reservation is necessary to make
sure nobody else will mmap inside.

Note such reservation does not account for VM size in e.g. Solaris.


Also, I could not find anything in /proc that would allow me to get the
"real" vsize.

You are getting the real vsize.

As a workaround to my problem, I think I will just substract the size
of the reserved region to the vsize I get from /proc.

However, I am curious to know what changed in VM management?

Thanks!
Olivier.

.