2016-02-29 1 views
2

Exécuter commande suivante pour répertorier tous les drapeaux jvm disponibles:jcmd - Signification de dernière Colum pour `jcmd VM.flags -all`

jcmd 24468 VM.flags -all | less -N 

Puis dans la dernière colonne, a trouvé les valeurs suivantes (en utilisant JDK1.8, sur linux):

* product 
    default value is the same on all platform, 
* pd product 
    default value is platform-dependent, 
* manageable 
    could change dymanically in runtime, 
* 
* C1 product 
* C2 product 
* 
* C1 pd product 
* C2 pd product 
* 
* product rw 
* 
* lp64_product 
* ARCH product 
* 
* commercial 
* 

la question est:

Je ne connais que le sens de certaines valeurs, que je ont donné une explication, quelles sont les significations des autres?

+0

Je pense que le sujet 'jcmd' est trop étroit pour un tag séparé. Quelque chose de commun comme 'jdk-tools' conviendrait mieux. – apangin

Répondre

2

Le type d'un indicateur dépend d'un emplacement dans le code source HotSpot où l'indicateur est déclaré/défini. La plupart des drapeaux sont déclarés au src/share/vm/runtime/globals.hpp.

  • pd_product drapeaux sont également déclarés dans globals.hpp, mais définis dans l'un des fichiers en fonction de la plate-forme:
  • C1 product et C2 product drapeaux sont spécifiques à C1 (client) et C2 (serveur) co mpiler respectivement. Ils sont déclarés dans les fichiers
  • C1 pd product et C2 pd product sont les drapeaux C1/C2 définis dans des répertoires spécifiques à la plateforme (os, cpu, os_cpu). Les indicateurs
  • product rw sont similaires à manageable, mais sont destinés à un usage interne et sont sujets à modification dans les futures versions de JVM. Ces drapeaux peuvent également être modifiés en cours d'exécution via JMX.
  • lp64_product Les indicateurs existent uniquement dans JVM 64 bits. Dans la JVM 32 bits, ce sont des constantes de compilation.
  • ARCH product Les drapeaux existent seulement sur une architecture particulière, contrairement à pd_product qui existent partout mais qui diffèrent par la valeur par défaut. Les indicateurs spécifiques à l'architecture sont déclarés et définis dans src/cpu/x86/vm/globals_x86.hpp.
  • commercial Les drapeaux nécessitent l'option -XX:+UnlockCommercialFeatures.

Il y a aussi

  • diagnostic drapeaux utilisés par les développeurs JVM. Ils sont déverrouillés par -XX:+UnlockDiagnosticVMOptions.
  • experimental indicateurs pour les fonctionnalités qui ne sont pas entièrement testées/prises en charge. Ils sont déverrouillés par -XX:+UnlockExperimentalVMOptions.