虚拟内存是用硬盘充当内存使用,为文件分配一段虚拟内存地址,程序对这段地址的读写就由操作系统变为对文件的读写;虚拟地址空间是指每个Windows进程都有操作系统分配给它的独立地址空间(32位系统下是每个进程独立4GB内存地址),进程A的地址0x00001000可能映射到物理内存的0x00001234、也可能映射到文件(虚拟内存)的某个位置,进程B的地址0x00001000可能映射到物理内存的0x00002234,但无论如何,进程A、B同时存在时,地址0x00001000一定是映射到不同的物理位置的。拟地址,是这个样子,你如果使用VS内存查看工具的话,你会发现全部都是0x456789之类的,这个就是虚拟地址。因为你每个程序启动,操作系统分配一部分内存给你的应用程序,你并不知道是实际物理地址的哪里到哪里,用户其实也不是特别关心,只关心自己能用的空间大小和相对空间位置,操作系统统一管理了,就给了一个映射列表。方便用户查找