问题不在于32位操作系统的最大堆大小,因为32位操作系统的最大可寻址内存大小为4GB,而 JVM 的最大堆大小取决于可以保留多少连续空闲内存。
I'm more interested in knowing the maximum (both theoretical and practically achievable) heap size for a 32-bit JVM running in a 64-bit OS. Basically, I'm looking at answers similar to 关于 SO 的相关问题中的数字.
至于为什么使用32位 JVM 而不是64位 JVM,原因不在于技术,而在于管理/官僚——在生产环境中安装64位 JVM 可能为时已晚。