It gives each process its own virtual memory , which looks like a private version of the main memory of the computer. Similarly, paging gives each process its own virtual memory, which is sparate from the memories of other processes and protected from them. Each virtual memory looks like a linear array of bytes, with addresses starting at zero. It makes the memory look bigger, by keeping infrequently used portions of the virtual memory space of a process on disk rather than in main memory. This feature both promotes more efficient sharing of the scarce memory resource among processes and allows each process to treat its memory as essentially unbounded in size.
Most systems have some sort of segementation, but often it is quite limited.
Unix has exactly three segments per process. It is generally 1 read-only, fixed in size when the process starts, and shared among all processes running the same program. There is a special system call to extend the size of the data segment of a process. The third segment is the stack segment. It is not shared between processes.