comparison agent/src/share/classes/sun/jvm/hotspot/HotSpotAgent.java @ 6782:5a98bf7d847b

6879063: SA should use hsdis for disassembly Summary: We should in SA to use hsdis for it like the JVM does to replace the current java based disassembler. Reviewed-by: twisti, jrose, sla Contributed-by: yumin.qi@oracle.com
author minqi
date Mon, 24 Sep 2012 12:44:00 -0700
parents a9fed06c01d2
children 39432a1cefdd
comparison
equal deleted inserted replaced
6780:8440414b0fd8 6782:5a98bf7d847b
41 41
42 /** <P> This class wraps much of the basic functionality and is the 42 /** <P> This class wraps much of the basic functionality and is the
43 * highest-level factory for VM data structures. It makes it simple 43 * highest-level factory for VM data structures. It makes it simple
44 * to start up the debugging system. </P> 44 * to start up the debugging system. </P>
45 * 45 *
46 * <P> FIXME: need to add a way to configure the paths to dbx and the
47 * DSO from the outside. However, this should work for now for
48 * internal use. </P>
49 *
50 * <P> FIXME: especially with the addition of remote debugging, this 46 * <P> FIXME: especially with the addition of remote debugging, this
51 * has turned into a mess; needs rethinking. </P> 47 * has turned into a mess; needs rethinking. </P>
52 */ 48 */
53 49
54 public class HotSpotAgent { 50 public class HotSpotAgent {
85 // All needed information for server side 81 // All needed information for server side
86 private String serverID; 82 private String serverID;
87 83
88 private String[] jvmLibNames; 84 private String[] jvmLibNames;
89 85
90 // FIXME: make these configurable, i.e., via a dotfile; also
91 // consider searching within the JDK from which this Java executable
92 // comes to find them
93 private static final String defaultDbxPathPrefix = "/net/jano.sfbay/export/disk05/hotspot/sa";
94 private static final String defaultDbxSvcAgentDSOPathPrefix = "/net/jano.sfbay/export/disk05/hotspot/sa";
95
96 static void showUsage() { 86 static void showUsage() {
97 System.out.println(" You can also pass these -D options to java to specify where to find dbx and the \n" +
98 " Serviceability Agent plugin for dbx:");
99 System.out.println(" -DdbxPathName=<path-to-dbx-executable>\n" +
100 " Default is derived from dbxPathPrefix");
101 System.out.println(" or");
102 System.out.println(" -DdbxPathPrefix=<xxx>\n" +
103 " where xxx is the path name of a dir structure that contains:\n" +
104 " <os>/<arch>/bin/dbx\n" +
105 " The default is " + defaultDbxPathPrefix);
106 System.out.println(" and");
107 System.out.println(" -DdbxSvcAgentDSOPathName=<path-to-dbx-serviceability-agent-module>\n" +
108 " Default is determined from dbxSvcAgentDSOPathPrefix");
109 System.out.println(" or");
110 System.out.println(" -DdbxSvcAgentDSOPathPrefix=<xxx>\n" +
111 " where xxx is the pathname of a dir structure that contains:\n" +
112 " <os>/<arch>/bin/lib/libsvc_agent_dbx.so\n" +
113 " The default is " + defaultDbxSvcAgentDSOPathPrefix);
114 } 87 }
115 88
116 public HotSpotAgent() { 89 public HotSpotAgent() {
117 // for non-server add shutdown hook to clean-up debugger in case 90 // for non-server add shutdown hook to clean-up debugger in case
118 // of forced exit. For remote server, shutdown hook is added by 91 // of forced exit. For remote server, shutdown hook is added by