There are lots of parameters for JVM. Some start with -, such as -server, -client. Some start with -X, such as -Xms, -Xmx. Some start with -XX, such as -XX:PermSize, -XX:UseParallelGC.
Since these parameters are not duplicated, why start with so many different prefix? Why not just use -. My guess is there are some kind of standards for this. The -XX parameters are extension settings and not supported by all JVM impls. Is that so?
Yeah, its the level of support. The vanilla (“-“) options are supported in future versions, and the X are not supported. Further, the XX options are “not recommended for casual use”.
For an example, see IBM’s JVM documentation: http://publib.boulder.ibm.com/infocenter/javasdk/v6r0/index.jsp?topic=%2Fcom.ibm.java.doc.user.aix64.60%2Fdiag%2Fappendixes%2Fcmdline%2Fcommands_jvm.html