java下载64安装32win7 64 旗舰版 新做的系统 装java的jdk32位 配置环境变量后 运行java命令提示 0xc0000142错误信息 求解

java下载64安装32win7 64 旗舰版 新做的系统 装java的jdk32位 配置环境变量后 运行java命令提示 0xc0000142错误信息 求解

描述

java下载64安装32win7 64 旗舰版 新做的系统 装java的jdk32位 配置环境变量后 运行java命令提示 0xc0000142错误信息 求解

为什么不装个64位的jdk呢?

java下载64安装32图片1

严格意义上来说,性能上会有一点差异,同样的程序迁移到64bit的性能可能会有小幅度下降。另外,64bit的jvm不再有heap size的限制。

The maximum theoretical heap limit for the 32-bit JVM is 4G. Due to various additional constraints such as available swap, kernel address space usage, memory fragmentation, and VM overhead, in practice the limit can be much lower. On most modern 32-bit Windows systems the maximum heap size will range from 1.4G to 1.6G. On 32-bit Solaris kernels the address space is limited to 2G. On 64-bit operating systems running the 32-bit VM, the max heap size can be higher, approaching 4G on many Solaris systems.

理论上来说32位的JVM有4G的堆大小限制。但是因为各种条件限制比如交换区,内核地址空间使用,内存碎片,虚拟管理机的管理开销,实际上可用的堆的大小远远比理论上的4G要少。

java下载64安装32图片2

在32位windows的机器上,堆最大可以达到1.4G至1.6G。

在32位solaris的机器上,堆最大可以达到2G

而在64位的操作系统上,32位的JVM,堆大小可以达到4G

补充一句,在使用java参数-xms -xmx定义堆大小的时候,

1. 如果是32bit的jvm超过4G肯定是没用的,定义了4G,最终使用到的可能只有2G

java下载64安装32图片3

2. 这两个值最好定义成一样,可以减少java gc的操作,有小幅度性能提高



留言