簡體   English   中英

可以在Linux上安裝64位JVM,以便堆可以大於2gb嗎?

[英]Is it possible to install 64 bit JVM on linux so heap can be larger then 2gb?

這是一個32位的Ubuntu操作系統

rob@laptop:~$ uname -a
Linux laptop 3.5.0-37-generic #58~precise1-Ubuntu SMP Wed Jul 
10 17:51:56 UTC 2013 i686 i686 i386 GNU/Linux


rob@laptop:~$ java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.12.04.2)
OpenJDK Server VM (build 23.7-b01, mixed mode)


rob@laptop:~$ sudo update-alternatives --config java
There are 3 choices for the alternative java (providing /usr/bin/java).

Selection    Path                                           Priority   Status
0            /usr/lib/j2re1.6-ibm/jre/bin/java               1200      auto mode
1            /home/rob/Downloads/jre1.7.0_25/bin/java        1         manual mode
2            /usr/lib/j2re1.6-ibm/jre/bin/java               1200      manual mode
* 3            /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java   1051      manual mode

我希望能夠運行超過2克的堆

rob@laptop:~$ java -Xmx3g -jar tool.jar 
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

rob@laptop:~$ free -g
             total       used       free     shared    buffers     cached
Mem:            15          2         12          0          0          1

不可以。在您選擇操作系統和內核的情況下,32位內核(可能還有32位CPU)無法為JVM運行64位可執行文件(或任何其他64位可執行文件/ ELF)。

據我所知,您沒有提到這是什么硬件。

32位/ 64位問題與硬件的基本字長有關,處理器具有使用該字長的指令。 因此,為64位構建的軟件將使用這些指令,並且如果以某種方式使其在32位計算機上運行,​​則將崩潰。

要執行所需的操作, 如果您的計算機是64位的,則可以安裝64位的linux,然后安裝64位的JVM。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM