HotSpot source: command line arguments

You may have read Joseph D. Mocker's excellent collection of JVM Options - a compilation of all the JVM options for various versions of the JVM on primarily SPARC/Solaris Platform. If you have downloaded JDK source from http://jdk6.dev.java.net, you may want to look at these files:

  • $JDK/hotspot/src/share/vm/runtime/globals.hpp (and globals.cpp)
  • $JDK/hotspot/src/share/vm/runtime/arguments.hpp (and arguments.cpp)

Please note that I am not suggesting this for tuning JVM on deployment - you may want to read No Tuning Required: Java SE Out-of-Box Vs. Tuned Performance.

You may be curious to know what options are available in product, debug modes of the HotSpot JVM. In particular, you may want to see what diagnostic/debug options which may help in debugging/troubleshooting.

These files have HotSpot command line flags (specified by -XX) and argument parsing code (in arguments.cpp). Also, you may want to look at Java launcher source at [some options by "java" are implemented by launcher sources (eg. -client, -server and -J-XXX) and many other options are implemented by hotspot JVM sources]

  • $JDK/j2se/src/share/back/bin/java.h
  • $JDK/j2se/src/share/back/bin/java.c

The launcher sources help in better understanding of JNI Invocation API as well.

Comments:

This is totally unrelated to this blog post, but since you blogged on this subject before: the mustang change list mentions ClassLoader constraints changes, but does not mention details of a bugId. Is there any place where we can find more information?

Posted by guest on October 30, 2006 at 02:09 PM IST #

Hope my blog entry titled HotSpot source: classloading helps!

Posted by A. Sundararajan on October 31, 2006 at 11:00 AM IST #

But what has actually changed in the Java 6.0 release? Why is it listed in the overview: http://java.sun.com/javase/6/webnotes/features.html (see near end of list)

Posted by guest on October 31, 2006 at 11:05 AM IST #

Mr Anonymous: please let me know your identity ;-)

Posted by A. Sundararajan on October 31, 2006 at 11:16 AM IST #

Now I'm not anonymous anymore. ;-) I am curious about this since I've been debugging some weird classloading issues from time to time, and the inclusion of the 'constraints' entry on the java6 changelog just triggered my interest. Apart from the old classloading paper your blog was the only place to even mention constraints explicitly, that's why I asked here. (and in the forums: http://forum.java.sun.com/thread.jspa?threadID=778710 )

Posted by Taras Tielkes on October 31, 2006 at 12:01 PM IST #

Hi Taras Tielkes: I'll start with this - I am not a HotSpot expert! I happen to read code in few areas of HotSpot. From my brief look, I don't think there were externally visible changes to loader constraints. What appears in "feature list" should probably be not there - I'd guess that the feature list is tool generated and then manually edited. In any case, if you hit a particular problem with loader constraints and/or classloading, please give more details and/or please file a bug.

Posted by A. Sundararajan on November 01, 2006 at 01:25 AM IST #

Post a Comment:
Comments are closed for this entry.
About

sundararajan

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today
Bookmarks
Links

No bookmarks in folder

Blogroll

No bookmarks in folder

News

No bookmarks in folder