摘要: 引言 执行引擎在执行Java代码时可能会有解释执行(解释器执行)和编译执行(JIT产生本地代码执行)。 运行时栈帧结构 栈帧存储了局部变量表、操作数栈、动态链接、方法返回地址。执行引擎运行的所有字节码指令都只针对虚拟机栈顶的栈帧而言。 局部变量表 局部变量表(Local Variable Table 阅读全文
posted @ 2017-10-18 14:25 BINGJJFLY 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 引言 类加载器工作在加载阶段,将二进制字节流(如从Class文件中获取)加载到内存中并生成对应的java.lang.Class对象。 类的唯一标识 类的唯一标识是指同一类(类的全限定名相同)被同一个类加载器加载,判断两个类是否相等除了比较全限定名是否相同还要判断两个类是否被同一个类加载器加载。 输出 阅读全文
posted @ 2017-10-18 09:50 BINGJJFLY 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 引言 类加载的全过程分为5个阶段:加载,验证,准备,解析,初始化。 加载 加载阶段虚拟机需要完成3件事: 1)通过一个类的全限定名来获取定义此类的二进制字节流,获取方式很多种如Class文件、网络、运行时计算生成等。 2)将这个字节流代表的静态存储结构转化为方法区的运行时数据结构。 3)在内存中生成 阅读全文
posted @ 2017-10-17 11:54 BINGJJFLY 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 引言 虚拟机把描述类的数据即Class文件加载到内存中,并对数据进行验证、转换解析和初始化,最终形成可以直接被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。 类的生命周期 类初始化的时机 第一个阶段加载是由虚拟机控制,对于初始化阶段,虚拟机严格要求有且只有5种情况触发初始化。 1)遇到ne 阅读全文
posted @ 2017-10-16 17:49 BINGJJFLY 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 引言 Java虚拟机的指令是由一个字节长度的代表着某种特定操作含义的数字(操作码)以及跟在其后零至多个操作所需参数(操作数)构成。 加载和存储指令 该类指令用于将数据在栈帧中的局部变量表和操作数栈之间来回传输。 将一个局部变量加载到操作数栈顶:iload,iload_<n>等,其中iload的前四个 阅读全文
posted @ 2017-10-16 13:33 BINGJJFLY 阅读(857) 评论(0) 推荐(0) 编辑
摘要: 参考:http://blog.csdn.net/mhmyqn/article/details/47342577 阅读全文
posted @ 2017-10-11 16:34 BINGJJFLY 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 引言 Class文件格式采用伪结构来存储数据,该伪结构有两种数据类型:无符号数和表。 无符号数是基本数据类型,以u1、u2、u4、u8表示1个字节、2个字节、4个字节、8个字节的无符号数。无符号数用来描述数字、索引引用、数量值或按UTF-8编码构成的字符串值。 表是由多个无符号数或其他表作为数据项构 阅读全文
posted @ 2017-10-11 11:07 BINGJJFLY 阅读(235) 评论(0) 推荐(0) 编辑
摘要: JConsole Java监视与管理控制台 启动JConsole 通过jdk/bin/下的“jconsole.exe”来启动,启动后将搜索出本机运行的所有虚拟机进程,不需要再使用 jps 来查询。双击进程即可开始监控。 概览页显示的是虚拟机运行时的情况,包括“堆内存使用量”、“线程”、“类”、“CP 阅读全文
posted @ 2017-10-09 10:38 BINGJJFLY 阅读(1073) 评论(0) 推荐(0) 编辑
摘要: JDK监控和故障处理工具 jps 虚拟机进程状况工具 列出正在运行的虚拟机进程,虚拟机执行主类(main函数所在的类)名称和这些进程的本地虚拟机唯一ID(LVMID)。 jps命令格式 jps [ options ] [ hostid ] jstat 虚拟机统计信息监视工具 可以显示本地或者远程虚拟 阅读全文
posted @ 2017-10-07 15:46 BINGJJFLY 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 对象优先在Eden分配 大多数情况下,对象会在新生代Eden区中分配,当Eden区中没有足够空间时,虚拟机将发起一次Minor GC。 运行结果 eden space 8192K:新生代Eden区 from space 1024K:新生代from survivor区 to space 1024K:新 阅读全文
posted @ 2017-10-05 08:26 BINGJJFLY 阅读(404) 评论(0) 推荐(0) 编辑