https://bugs.winehq.org/show_bug.cgi?id=37355
--- Comment #31 from Zebediah Figura z.figura12@gmail.com --- (In reply to Richard Yao from comment #30)
You also need to handle multiple adjacent allocations and do reference counting. You basically get to reimplement the kernel's memory management, which is plenty of effort to get right. The kernel does all of this for us, so why reimplement it? We'd never have an implementation that is both fast and correct either due to the need to stop all of the processes' threads to copy things in a way that would match what it would normally see. The fact that we need to copy at all would slow this down.
I don't think this is as difficult as you make it out to be. It's not like we don't already do memory management anyway (see e.g. server/mapping.c).
It seems to me that we'd obviously want to avoid any need for root access (or kernel patching) if possible.