码迷,mamicode.com
首页 >  
搜索关键字:jpda架构    ( 19个结果
JPDA 架构研究7 - Agent利用环境指针访问VM(线程组管理篇)
引入:上篇文章中我们讨论了Agent利用环境指针访问VM的线程操作,这里讨论线程组操作。分类3:线程组操作a.GetTopThreadGroups.让Agent获取VM中的所有全局的线程组。jvmtiError GetTopThreadGroups(jvmtiEnv*env, jint*group_count_ptr, jthreadGroup**groups_ptr)函数会返回全..
分类:编程语言   时间:2014-12-09 02:00:53    阅读次数:205
JPDA 架构研究6 - Agent利用环境指针访问VM (线程管理篇)
引入:上篇文章讲解了分类:内存管理,现在讲线程类操作的接口。分类2:线程类操作a.GetThreadState.获取线程状态jvmtiError GetThreadState(jvmtiEnv*env, jthreadthread, jint*thread_state_ptr)大家都知道线程有很多种状态,比如Alive,Terminated,Runnable,等待进入Synchron..
分类:编程语言   时间:2014-12-09 02:00:53    阅读次数:232
JPDA 架构研究8 - Agent利用环境指针访问VM(堆栈管理篇)
引入:上篇文章讲解了Agent利用环境指针访问VM的线程组操作,这里讨论下堆栈操作。分类4:堆栈操作a.GetStackTrace.获取某线程的堆栈。jvmtiError GetStackTrace(jvmtiEnv*env, jthreadthread, jintstart_depth, jintmax_frame_count, jvmtiFrameInfo*frame_buffer, jint*count..
分类:其他好文   时间:2014-12-09 02:00:00    阅读次数:158
JPDA 架构研究5 - Agent利用环境指针访问VM (内存管理篇)
引入:我们在前面说到JVMTI的客户端Agent,又提到Agent通过环境指针来访问VM。这里就来看看环境指针到底有多大的访问VM的能力。分类1:内存管理a.Allocate.分配内存jvmtiError Allocate(jvmtiEnv*env, jlongsize, unsignedchar**mem_ptr)size:分配的字节数.mem_ptr:分配内存的首..
分类:其他好文   时间:2014-12-09 01:59:47    阅读次数:247
JPDA 架构研究9 - Agent利用环境指针访问VM (堆管理篇)
引入:上文中我们讨论了Agent利用环境指针访问VM的堆栈操作部分,这里我们讨论堆操作部分。分类5:堆操作a.GetTag.获取对象在堆上的唯一标识符(长整型)。jvmtiError GetTag(jvmtiEnv*env, jobjectobject, jlong*tag_ptr)b.SetTag.为对象设置堆上的唯一标示符。jvmtiError Set..
分类:其他好文   时间:2014-12-09 01:58:32    阅读次数:243
JPDA 架构研究3 - JDWP层的数据包
引入:现在我们来看JDWP层的数据包。源码在JDK中很容易找到,它定义$JAVA_HOME/include/jdwpTransport.h头文件中。分析:Part1:握手过程(handshake)握手包发生在Debugger(JDI端)和TargetVM(JVMTI端)的传输层连接建立,并且在发送任何实际数据报之前完成的。它过程如下:a.D..
分类:其他好文   时间:2014-12-08 19:48:29    阅读次数:200
JPDA 架构研究4 - JDWP的传输接口
引入:上一篇文章主要分析JDWP层传输的数据包的格式,这篇文章我们主要关注于JDWP层是如何传输的。分析:传输的具体实现是根据各个JVM自己实现,但是他们有个共同点就是都是用C/C++实现的,并且都实现了jdwpTransport.h(和上篇一样的这个文件)。实现根据我们的知识可以得知是..
分类:其他好文   时间:2014-12-08 19:45:29    阅读次数:158
JPDA 架构研究2 - JDWP代理
引入:我们先从最重要的通信层讲起。通信层(JDWP),它的全称是JavaDebugWireProtocol。从"Wire"这词就可以看出,它主要是起到"连线”的作用,也就是说,它主要是起到把最靠近程序员的JDI(也就是调试器)和最靠近运行在虚拟机中的程序的JVMTI连接在一起。因为彼此之间语言不通。..
分类:其他好文   时间:2014-12-08 15:47:56    阅读次数:415
JPDA 架构研究1- 整体架构
引入:关于JPDA(JavaPlatformDebuggerArchitecture)网上有很多讲解,例子。我也不重复发明轮子了,这组文章主要从实践的代码分析角度,仔细剖析这个平台的特点,以及这其中的一些问题澄清和误区。实践:如果我们从利用JavaRemoteDebug的功能来看待JPDA,并且使用socket的通信方..
分类:其他好文   时间:2014-12-08 15:46:55    阅读次数:142
19条   上一页 1 2
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!