As shown in the figure given below that most computer systems have a single address space that holds both programs and the data:
Each and everything works fine if this address space is large enough.
But sometime, it is too small, forcing the programmer just to stand on their heads to fit each and everything into the address space.
A solution is to have separate address space for the program text and the data. There separate spaces are called as I-space and D-space.
Here, each address space runs from 0 to some maximum typically 232-1.
You can see both of them in the figure given below:
Both the address spaces can be pages independently from one another in the computer system with this design.