Explain how memory managed as separate address spaces provides memory protection for multiple processes.

Explain how memory managed as separate address spaces provides memory protection for multiple processes. Is this model more or less complex than having all processes use the same memory space? Are there security concerns?