当使用LARGEADDRESSAWARE标志时,我的32位程序可以访问4GB的地址空间,还是只有3GB的地址空间? 为什么呢?
答案 0 :(得分:3)
设置了LARGEADDRESSAWARE的32位进程可以在64位Windows上处理4GB。它可以这样做,因为这是微软的优秀工程师如何实现它。
记录在案here。
答案 1 :(得分:2)
也许是anwser is there
一个32位进程将访问2GB RAM,带有LARGEADDRESSAWARE标志,它达到4GB
答案 2 :(得分:0)
http://blogs.msdn.com/b/hiltonl/archive/2007/04/13/the-3gb-not-4gb-ram-problem.aspx
http://www.oldunreal.com/cgi-bin/yabb2/YaBB.pl?num=1200330824
答案 3 :(得分:0)
在大多数操作系统中,您的32位空间被分解为您编程(用户代码)可以分配和使用的部分,以及内核拥有的部分。除非您正在编写自己的OS /内核,请使用系统API(例如malloc / free,C / C ++中的new / delete)或python中的底层管理,java为您管理内存分配。
但是,如果您“内存不足”,则会开始考虑错误