On Thu, May 2, 2013 at 11:13 PM, Joshua Marsh <[email protected]> wrote:

> I vaguely recall something to do with private address space for MAP_PRIVATE
> and how Linux handled the memory for that. It must not be the case now
> though. I just fallocate'd a 100GB file and mmap()'ed it without issue. Has
> something changed recently (10 years since I've used C/mmap)?

You were likely using a 32 bit architecture 10 years ago, which only
has a 4GB address space.  Maybe that had something to do with it? From
what I can tell, MAP_PRIVATE does Copy On Write, which prevents your
changes to memory pages from being written back to the original file.
I guess if you changed data on too many pages, you could blow out your
swap space pretty quickly.

/*
PLUG: http://plug.org, #utah on irc.freenode.net
Unsubscribe: http://plug.org/mailman/options/plug
Don't fear the penguin.
*/

Reply via email to