首先需要理解的是现存32bit虚拟机与64bit虚拟机在典型操作系统下(windows,unix)所能使用的最大的内存是多少: 32bit JDK在windows操作系统下最大支持2G内存,理论上堆内存设置为1.5G合适…
分类:java虚拟机
深入理解Java虚拟机 - 泛型与类型擦除
泛型是JDK 1.5的一项新增特性,它的本质是参数化类型(Parametersized Type)的应用,也就是说所操作的数据类型被指定为一个参数。 这种参数类型可以用在类、 接口和方法的创建中,分别称为泛型类、 泛型接…
《深入理解 Java 虚拟机》- 笔记 - HotSpot 虚拟机对象
对象的创建 虚拟机遇到一条 new 指令时,首先去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程。 在类加载检查…
深入JVM-java虚拟机的基本结构
本文将介绍Java虚拟机的基本结构,各组成部分的作用,以及相互之间是如何协调的。而要了解这些,首先必须了解Java堆、Java栈、永久区和元数据区的基本概念。 一、Java虚拟机的架构 1.1 类加载子系统 类加载子系统…
java虚拟机系列之深入认识堆(Heap)和栈(Stack)
上一篇在介绍java虚拟机之前,我们谈到了什么是java的基本类型和引用类型,平时我们应该注意的东西,然后我们谈到了java虚拟机中的堆和栈,但是也只是很简单的说了一说,但是我觉得在java中最重要的就是理…
《深入理解Java虚拟机——JVM高级特性与最佳实践》学习笔记——Java类文件结构
《深入理解Java虚拟机——JVM高级特性与最佳实践》学习笔记——Java类文件结构 1.概述 由于计算机只能识别0和1,所以我们编写的程序需经过编译器编译后(二进制格式)才能运行在计算机上,然而随着虚拟机的发展,将我们…
OpenJDK9 Hotspot java 虚拟机入口
假设 openjdk 源代码目录为 jdk9dev main函数 main 函数在 jdk9dev/jdk/src/java.base/share/native/launcher/main.c,它处理完命令行参数后跳转到…
《深入理解Java虚拟机》笔记-GC日志理解
33.125:[GC[DefNew: 3324k->152k(3712k), 0.0025925 secs] 3324k->152k(11904k),0.0031680 secs] 含义依次为: 33.125…
《深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)周志明 著》阅读笔记目录(已完结)
《深入理解Java虚拟机:JVM高级特性与最佳实践(第2版) 周志明 著》阅读笔记 目录: 第一部分 走进Java 无 第二部分 自动内存管理机制 01 运行时数据区域 02 HotSpot虚拟机内存中对象的布局 03 …
《深入理解 Java 虚拟机》学习笔记2
《深入理解 Java 虚拟机》学习笔记2 第2章 Java 内存区域与内存溢出异常 2.1 概述 2.2.1 程序计数器 程序计数器(Program Counter Register) java 虚拟机的多线程是通过线程…
深入理解Java虚拟机(笔记)
1、JVM管理的内存被分为 方法区, 虚拟机栈, 本地方法栈, 堆, 程序计数器; 程序计数器(线程私有) 1.1、程序计数器是当前线程执行的字节码的行号指示器(通过改变这个计数器的值来实现取指令,分支,循环,跳转,异常…
深入理解Java虚拟机——虚拟机性能监控与故障处理工具(读书笔记)
1、jps(JVM Process Status):虚拟机进程状况工具 可以列出正在运行的JVM进程,并显示JVM执行的主类的名称,以及这些进程的本地JVM的唯一ID(LVMID Local Virtual Machin…