| | | | | | | [文章信息] | | | 作者: | | | 时间: | 2004-10-31 | | 出处: | sun | | 责任编辑: | 方舟 | |
| [文章导读] | | | Java 虚拟机工具接口提供了一种编程接口,允许软件开发人员创建软件代理以监视和控制 Java 编程语言应用程序 | |
| |
|
| | | |
|
|
|
|
|
编译和执行示例代码
要编译并运行这里描述的示例应用程序的代码,请按以下步骤操作:
设置 JDK_PATH 为指向 J2SE 1.5 发行版 JDK_PATH="/home/xyz/j2sdk1.5.0/bin"
使用 C 语言编译器构建共享库。我们使用的是 Sun Studio 8 C 编译器。
CC="/net/compilers/S1Studio_8.0/SUNWspro/bin/cc" echo "...creating liba.so" ${CC} -G -KPIC -o liba.so -I${JDK_PATH}/include -I${JDK_PATH}/include/solaris a.c | 要加载并运行代理库,请在 VM 启动过程中使用下面的命令行参数之一。
-agentlib:<jvmti-agent-library-name> -agentpath:/home/foo/jvmti/<jvmti-agent-library-name> | 然后如下运行示例 Java 应用程序:
echo "...creating SimpleThread.class" ${JDK_PATH}/bin/javac -g -d . SimpleThread.java echo "...running SimpleThread.class" LD_LIBRARY_PATH=. CLASSPATH=. ${JDK_PATH}/bin/java -showversion -agentlib:a SimpleThread | 注意:此示例代理代码是在 Solaris 9 Operating System 上构建和测试的。
结束语
在本文中,我们演示了 JVMTI 提供用于监控和管理 JVM 的一些接口。JVMTI 规范 (JSR-163) 旨在为需要访问 VM 状态的广泛的工具提供一个 VM 接口,这些工具包括但不限于:分析、调试、监控、线程分析和覆盖率分析工具。
建议开发人员不要使用 JVMPI 接口开发工具或调试实用工具,因为 JVMPI 是一种不受支持的实验技术。应考虑使用 JVMTI 编写 Java 虚拟机的所有分析和管理工具。
|
|
|
|
|
|
|
|
|