跳到主要内容

JEP 228: Add More Diagnostic Commands

Summary

Define additional diagnostic commands, in order to improve the diagnosability of Hotspot and the JDK.

Description

This is a list of the new commands (exact names are TBD):

  • Print a list of all loaded classes and their inheritence structure.
  • Responsible group: runtime
  • Print methods queued for compilation with either C1 or C2 (separate queues)
  • Responsible group: compiler
  • Print all UTF-8 string constants.
  • Responsible group: runtime

datadump_request

  • Signal the JVM to do a data-dump request for JVMTI.
  • Responsible group: serviceability

dump_codelist

  • Print n-methods (compiled) with full signature, address range, and state (alive, nonentrant, and zombie).
  • Allow selection of printing to stdout or to a file.
  • Allow XML or text printout.
  • Responsible group: compiler
  • Print the size of the code cache and a list of blocks in the code cache, with adresses.
  • Responsible group: compiler

set_vmflag

  • Set a command-line flag/option in VM or the libraries.
  • Responsible group: servicability

Testing

There needs to be a test for each command to verify the output.