Java 디폴트 옵션 알아내기.
Java 로 프로그램을 실행할때에는 많은 옵션들을 줄 수가 있다. 대표적으로 최소, 최대 힙(Heap) 크기와 가비지 컬렉터(Garbage Collector)를 무엇으로 할 것인지 하는 것이다.
그런데, 이러한 옵션들이 없다면 Java 는 기본적으로 어떤 값으로 동작을 하게될까? 이 물음에 대한 답은 다음의 명령어로 알아 볼 수 있다.
1 |
./java -XX:+PrintCommandLineFlags -version |
위와 같이 실행을 하면 기본적인 값들을 보여준다. 다음은 Linux X86_64 에서 Java 버전별로 가지는 기본값들 이다.
jdk1.6.0_45
1 2 3 4 5 |
./java -XX:+PrintCommandLineFlags -version -XX:InitialHeapSize=95137024 -XX:MaxHeapSize=1522192384 -XX:ParallelGCThreads=4 -XX:+PrintCommandLineFlags -XX:+UseCompressedOops -XX:+UseParallelGC java version "1.6.0_45" Java(TM) SE Runtime Environment (build 1.6.0_45-b06) Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode) |
jdk1.7.0_75
1 2 3 4 5 |
./java -XX:+PrintCommandLineFlags -version -XX:InitialHeapSize=95137024 -XX:MaxHeapSize=1522192384 -XX:+PrintCommandLineFlags -XX:+UseCompressedOops -XX:+UseParallelGC java version "1.7.0_75" Java(TM) SE Runtime Environment (build 1.7.0_75-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode) |
jdk1.8.0_40
1 2 3 4 5 |
./java -XX:+PrintCommandLineFlags -version -XX:InitialHeapSize=95137024 -XX:MaxHeapSize=1522192384 -XX:+PrintCommandLineFlags -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParallelGC java version "1.8.0_40" Java(TM) SE Runtime Environment (build 1.8.0_40-b26) Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode) |