进程的虚拟地址空间就是指进程的大小么?解决办法

进程的虚拟地址空间就是指进程的大小么?
我在书上看到说,32位地址线的进程虚拟地址空间是2GB,这里说的地址空间就是可以容纳这个进程大小的最大空间的意思么? 那么如果这个程序很大,超过2GB了怎么办?

还有内存是由操作系统管理的,用户程序没法直接访问的是吗?
所以说我们运行用户程序的时候,程序最初都是存放在磁盘上的,要等到操作系统的调入才能放到内存上去执行,而存放在磁盘上的程序就是所谓的可执行映像文件,是这样吗?

------解决方案--------------------
探讨
我在书上看到说,32位地址线的进程虚拟地址空间是2GB,这里说的地址空间就是可以容纳这个进程大小的最大空间的意思么? 那么如果这个程序很大,超过2GB了怎么办?

还有内存是由操作系统管理的,用户程序没法直接访问的是吗?
所以说我们运行用户程序的时候,程序最初都是存放在磁盘上的,要等到操作系统的调入才能放到内存上去执行,而存放在磁盘上的程序就是所谓的可执行映像文件,是这样吗?

------解决方案--------------------
32位的机器虚拟内存时4G
这个地址有2G是自己分配的,有的系统有3G
虚拟内存是通过映射文件形成的
所有你有100G的进程,但是在内存中只有2G的映射,操作系统会为你做好映射工作的
这4G的虚拟内存相当于一个AWE,地址窗口扩展,所有可以运行你所有大小的进程

我们运行用户程序的时候,程序最初都是存放在磁盘上的,要等到操作系统的调入才能放到内存上去执行,而存放在磁盘上的程序就是所谓的可执行映像文件,是这样吗?
是这样的
------解决方案--------------------
那么如果这个程序很大,超过2GB了怎么办?

没法装载
------解决方案--------------------
还有内存是由操作系统管理的,用户程序没法直接访问的是吗?

---

内存都是直接访问的。

如果每一次指针操作都经过操作系统,那么,程序肯定慢死。