首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在64位操作系统上,32位进程可以访问多少内存?

在64位操作系统上,32位进程可以访问多少内存?
EN

Stack Overflow用户
提问于 2009-03-12 17:00:38
回答 6查看 140.1K关注 0票数 90

在Windows上,在正常情况下,32位进程只能访问2 2GB的内存(或者在boot.ini文件中使用特殊的开关访问3 2GB)。在64位操作系统上运行32位进程时,有多少可用内存?有没有什么特殊的开关或设置可以改变这一点?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-03-12 17:04:38

默认为2 GB。如果应用程序支持大地址空间(与/LARGEADDRESSAWARE链接),它将获得4 GB (而不是3 GB,请参阅http://msdn.microsoft.com/en-us/library/aa366778.aspx)

它们仍然被限制在2 GB,因为许多应用程序依赖于指针的最高位为零。

票数 95
EN

Stack Overflow用户

发布于 2009-03-12 17:03:37

4 GB减去系统正在使用的容量(如果您使用/LARGEADDRESSAWARE链接)。

Of course, you should be even more careful with pointer arithmetic if you set that flag.

票数 21
EN

Stack Overflow用户

发布于 2013-01-23 06:09:44

似乎没有人提到这样一个事实:如果你有许多不同的32位应用程序,wow64子系统可以将它们映射到内存中4G以上的任何地方,所以在有足够内存的64位windows上,你可以运行比在本机32位系统上多得多的32位应用程序。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/639540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档