64位操作系统上的32位应用程序需要3.5 GB [英] 32 bit application on 64 bit OS needs 3.5 GB

查看:117
本文介绍了64位操作系统上的32位应用程序需要3.5 GB的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,



我正在VS 2012中编程一个需要最大内存的应用程序。我的系统有16 GB RAM,操作系统是Win 7专业64位。启用大地址识别标志后,我的应用程序停止在3 GB。

如果不进行PAE和AWE,他们可以轻松获得3 GB以上的数据吗?



感谢您的帮助

Hello together,

I'm programming in VS 2012 an application that needs the maximum of memory. My System has 16 GB RAM and the OS is Win 7 profesional 64 bit. After enabling the Large Address Aware flag my appliaction stops at 3 GB.
Is their a easy way to get more then 3 GB without doing PAE and AWE?

thanks for the help

推荐答案

3G限制与64位操作系统完全无关。把它忘了吧。实际限制是32位进程的4G地址空间。如果是第一名,你没有提供足够的信息,但这是我的结论:



你真的达到4G限制。您只是错误地估计您的最大内存使用量为3.5G。它可能只是您的主要数据,但环境(WoW64)和您的应用程序会占用更多。事实是:3.5G太接近地址空间限制了。您可以这样做:



The 3G limit is totally irrelevant to 64-bit OS. Just forget it. Youe real limit is 4G address space for a 32-bit process. You did not provide enough information if first place, but here are my conclusions:

You are really hitting the 4G limit. You just inaccurately estimated your maximum memory use as 3.5G. It could be just you major data, but the environment (WoW64) and your application take up some more. The fact is: 3.5G is way too close to the address space limit. Here is what you can do:

  1. 考虑查看您的应用程序架构。由于架构错误,许多人过度使用内存。通常,应用程序不需要同时在内存中加载的对象。您可以将一些对象存储在磁盘上,重新创建一些,等等。
  2. 或者,切换到64位指令集中的一个或两个体系结构:x86-64,IE64(Itanium),无论你想要什么目标。
  3. ......或者结合两种方法。
  1. Consider reviewing your application architecture. Many overuse memory due to architectural mistakes. Often, the application don't need as many objects loaded in memory at the same time. You can store some objects on disk, re-created some, and so on.
  2. Alternatively, switch to one or two of the 64-bit instruction-set architectures: x86-64, IE64 (Itanium), whatever you want to target.
  3. …Or combine both approaches.





请记住:没有奇迹这样的事情。你当然需要使用一种或另一种方法,而不是一种神奇的系统技巧;你没有。



参见:

http://en.wikipedia.org/wiki/Instruction_set [ ^ ],

http://en.wikipedia.org/wiki/ WoW64 [ ^ ],

http://en.wikipedia.org/wiki/X86 [ ^ ],

http://en.wikipedia.org/wiki/X86-64 [ ^ ],

http: //en.wikipedia.org/wiki/IA-64 [ ^ ],<无线电通信/>
http://en.wikipedia.org/wiki/Itanium [ ^ ]。



祝你好运,

-SA



Remember: there is no such thing as miracle. You certainly need to use one or another approach, not a magical system trick; you don't have any.

See also:
http://en.wikipedia.org/wiki/Instruction_set[^],
http://en.wikipedia.org/wiki/WoW64[^],
http://en.wikipedia.org/wiki/X86[^],
http://en.wikipedia.org/wiki/X86-64[^],
http://en.wikipedia.org/wiki/IA-64[^],
http://en.wikipedia.org/wiki/Itanium[^].

Good luck,

—SA


这篇关于64位操作系统上的32位应用程序需要3.5 GB的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆