第八章 虚拟机字节码执行引擎概述执行引擎是Java虚拟机最核心的组成之一。 运行时栈帧结构栈帧(Stack Frame)是用于支持方法调用和方法执行的数据结构。它是虚拟机运行时数据区中的虚拟机栈的栈元素,存储了方法的局部变量表、操作数...
深入理解Java虚拟机 - 第七章
第七章 虚拟机类的加载机制7.1 概述虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类的加载机制。 7.2 类的加载时机 加载(Load...
深入理解Java虚拟机 - 第六章
第六章 类文件结构概述现在越来越多的程序语言选择了与操作系统无关和机器指令无关的、平台中立的格式作为程序编译后的存储格式。 无关性的基石 Class类文件的结构Class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照顺...
深入理解Java虚拟机 - 第五章
第五章 调优案例分析与实战案例分析高性能硬件上的程序部署策略问题描述 一个每天15万PV左右的在线文档网站升级了硬件,4个CPU,16GB物理内存,操作系统为64位CentOS 5.4,使用Resin作为Web服务器,没有部署其他的...
深入理解Java虚拟机 - 第四章
第四章 虚拟机性能监控与故障处理工具概述给一个系统定位问题时,知识、经验是关键基础,数据是依据,工具是运用知识处理数据的手段。 JDK命令行工具jps: 虚拟机进程状况工具 功能:可以列出正在运行的虚拟机进程,并线上虚拟机执行的主类...
深入理解Java虚拟机 - 第三章
第三章 垃圾收集器与内存分配策略概述垃圾收集(Garbage Collection , GC)的历史远远比Java久远。它需要完成三件事: 哪些内存需要回收 什么时候回收 如何回收 程序计数器、虚拟机栈、本地方法栈三个区域随线程而...
深入理解Java虚拟机 - 第二章
第二章 Java内存区域、内存溢出异常概述Java与C++之间有一堵由内存分配和垃圾收集技术所围成的高墙,墙外的人想进来,墙里面的人想出来。 Java运行时数据区 程序计数器程序计数器(Program Counter Register...