|
From: Tom H. <to...@co...> - 2005-09-10 06:39:17
|
In message <171...@ka...>
Greg Parker <gp...@us...> wrote:
> There's a capability in Mac OS X's Mach VM that basically looks like
> new memory mappings appearing as a result of a syscall (other than mmap).
> There isn't a way to specify where any such mapping should be inserted
> (nothing like MAP_FIXED); indeed, in the worst case, the mapping just
> appears without any explicit request by the process.
There are some system calls in linux that do that as well.
> In the current Valgrind memory model, there's the client space and
> Valgrind's space, and never the twain shall meet. To prevent rogue
> mappings, it would be possible for Valgrind to keep all of Valgrind's
> space mapped, and leave the unused parts with no permissions. This
> requires a bit of code change, but should be straightforward.
That's basically we handle it at the moment - there is code to pad
the address space which is invoked before the problem system calls
to ensure that the mapping goes where we want it.
Keeping large chunks of address space mapped is problematic however
which is one reason for the rewrite of the address space manager.
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|