Roland Mainz wrote:

> Offtopic: "truss" knows about |mmap()| flags and translates them to
> ASCII text but |mmapobj()| flags are only shown as hexadecimal values...
> should I file a RFE for that ?

Yes, please do.

> I don't want to assume any fixed address space location... my question
> is more which kind of optimisations are done and how the kernel is
> involved... for example does the kernel reserve a certain chunk of
> address space for such libraries (e.g. for 64bit applications reserve
> 0x0400000000000000-0x0500000000000000 to make sure it can map libc&co.
> across all 64bit processes into the same locations to reduce MMU
> overhead (e.g. that MMU entries can be shared between processes)) ?

This is really a question for the VM (kernel) folks.

The point of mmapobj() was to remove all mapping requests from
ld.so.1, and have the kernel do "what's best".  Now, what is
best is probably still being determined.  The use of large pages,
the same mapping for frequently used objects, etc. etc. are
all decisions that the VM can make based on it's knowledge of
the platform, the file being mapped and the size of the mappings
required.

What's being done right now, is probably not very different to
the mappings that ld.so.1 has achieved before, but again, the
VM folks would know.  There are VM projects underway, and these
projects can now implement mmapobj() to their advantage.

-- 
Rod

Reply via email to