繁体   English   中英

在32位Windows中从Java获取超过2GB的计算机的总物理内存大小

[英]Get total physical memory size over 2GB of computer from Java in 32-bit Windows

我正在尝试使用Java 7以编程方式检索Windows XP上可用的总物理内存。我正在使用OperatingSystemMXBean检索此值。

((com.sun.management.OperatingSystemMXBean) java.lang.management.ManagementFactory.getOperatingSystemMXBean()).getTotalPhysicalMemorySize()

但是,这将返回2147483647(2GB),而任务管理器报告的总物理内存为3669488 KB。

据我了解,一个32位OS每个进程最多允许2GB RAM,所以我猜测这在某种程度上干扰了OSMXBean方法。 是否有另一种方法来获取总物理内存大小,该大小在跨平台(即32位和64位)上正常工作?

32位Windows不能为进程分配超过2GB的内存。 即使当您拥有完整的4 GB RAM时,它在理论上也可以配合使用,那么您只有2GB RAM vor OS使用率。

因此,在您的32位Windows上,无法为您的进程检索更多的2GB RAM。 要获得更多,您必须使用64位。

有关更多信息: 在这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM