As far as I'm concerned, as long as applications aren't jerks, they should be happy together. I think memory fragmentation is a bigger issue, isn't it? (Having so many different banks of memory, some slower than others can't be all that fun to write around in.)
Fragmentation shouldn't be too much to worry about as long as programs aren't wont to request large blocks of contiguous memory, which I guess is fairly rare these days. On old stock Amigas you could legitimately request 50% of Chip RAM in one go but a few Gb, not so much.
Besides, if that is a problem, one could maintain a single virtual address space, which would get round the fragmentation problem without breaking software, and have a few other advantages too (swap space, seg faults if unallocated memory is accessed). But unfortunately the real problem these days is malicious code. Computer security is big business. It's sad that computers should have to be so much more complex and less efficient just because of selfish idiots, but there you go.