tomcat的jvm大小设置与操作系统以及jdk有关;具体来说:
1.操作系统是32bit的,程序最大内存访问空间是4G, 2的32次方,这是硬件决定的,跟windows linux没有任何关系。
2.和jdk 是32位还是64位 有关。即64位的操作系统配合64位jdk,才能发挥最大jvm内存。
下面举例说明:
某操作系统:
在32位jdk下:
在64位jdk下:
备注:
1. -Xmx JVM堆的最大值, 缺省应该是物理内存的1/4
2. Test.java 源代码:作用是判断jdk是32位还是64位
- public class Test{
- public static void main(String[] args) {
- String arch = System.getProperty( "sun.arch.data.model" );
- System.out.println(arch+ "-bit" );
- }
- }
附:判断jdk是32还是64位还有一个更简单的办法: