我一直从我的用户那里得到这个问题,不幸的是我没有找到关于 x64 的好的链接(x86 是另一回事)。
64 位 Windows 上应用程序可用的最大内存是多少:
- C++ 应用
- .Net应用
- .Net 应用程序使用 C++ 库
- 应用程序正在 Windows 2008 上运行/2012服务器
- 应用程序在 Windows 7/8 上运行
最佳答案
假设地址被认为是无符号的,理论上,总量将超过 18 quintillion(2^64 或 180 亿)字节或 180 亿千兆字节。如果您限制自己并考虑一个带符号的 64 位整数,那么您将看到其中的一半。哦,不要忘记减去为硬件保留的内存,例如视频 ram、总线地址空间等。
但即使这些数字也不一定是最大值(至少理论上是这样),因为您还可以使用其他技巧(例如使用物理地址扩展在 32 位上使用超过 2 GB)。
因此,基本上作为简短的回答:64 位允许您寻址和使用您的钱可以买到的所有内存。
不幸的是,硬件和软件限制很可能要低得多,例如主板可用的最大内存量(取决于主板的使用年限,现在通常是 8 或 16 GB,有时是 32国标)。 Judging by Windows itself, the maximum amount can vary greatly, based on your architecture and version you're running.
关于c++ - 64 位 Windows 上应用程序可用的最大内存是多少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12723204/