Mercurial > hg > truffle
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 |