virtual address space allocation

Babis Chalios bchalios at lillyput.xyz
Tue Jul 31 09:41:28 EDT 2018


Dear kernel hackers,

I am working on the runtime system of a distributed memory programming
language. For some reason we need to
create a big hole on the address space of the application. We are trying
to do so by using an mmap during the
initialization of the runtime and then the runtime handles itself those
addresses.

This scenario works properly when the system allows memory
overcommitment. More specifically, we seem to
be fine if the /proc/sys/vm/overcommit_memory contains the values 0 or 1.

However, we do have problems if memory overcommitment is disabled.

So here goes the question: Is there any other mechanism to allow us to
do what we want to?

Things I 've thought so far:

1) To do my mmaps using PROT_NONE assuming that maybe those pages are
not accounted for when calculating
overcommitment.  I did some tests and it seems that this assumption is
wrong.

2) The possibility that there are addresses that are highly unlikely to
be mapped in the address space of my application.
If there is such an address range I could potentially relax the
requirement that I should map all the address space at
the beginning of the execution and instead try to mmap it progressively
at runtime on a per-need basis.

Any thoughts would be helpful.

Cheers,
Babis





-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20180731/6479988b/attachment.sig>


More information about the Kernelnewbies mailing list