虚拟地址空间与虚拟内存

时间:2013-06-29 07:37:42

标签: linux operating-system virtual-memory virtual-address-space

虚拟地址空间和虚拟内存之间有什么区别吗? 如果是这种情况,32位操作系统的vaddr空间和虚拟内存不会超过4GB。

提前致谢

好 虚拟内存可以存在于本地或远程。 虚拟地址空间是用于处理内存的每个进程的指针。 这意味着我的最大虚拟内存容量受到我的地址空间限制的限制。 如果错的话,请纠正我。

2 个答案:

答案 0 :(得分:1)

虚拟内存作为一个概念,可以以不同的方式支持内存。进程的某些内存可以在磁盘上,一些在主内存中,一些甚至可以在远程网络上。这由操作系统管理,对正在运行的用户进程透明。对于用户来说,它只是内存。

虚拟地址空间意味着映射到用户进程的内存地址。两个不同的用户进程访问(向他们)内存中的相同地址,但它们将包含完全不同的数据。如果用户地址空间很小(如32位),这一点尤为重要。这意味着无论进程如何存在,每个进程都可以访问与地址空间允许的内存相同的内存。

在操作系统中,每个都可以不存在。但结合起来它们是最有用的,因此通常由OS以紧密耦合的方式实现。

答案 1 :(得分:0)

来自维基百科的virtual memoryvirtual address space文章:

  

虚拟内存是为多任务内核开发的内存管理技术。

     

虚拟地址空间是现代操作系统中可用的内存映射机制。

所以答案是:是的,这些是完全不同的术语。虽然它们是相关的。