随笔分类 -  JVM

摘要:文档描述 1、JVM 有一个方法区,在所有 JVM 线程之间共享 2、方法区类似于传统语言的编译代码的存储区,或者类似于操作系统进程中的“text”段,它存储每个类的结构,如:运行时常量池、字段、方法数据、方法、构造函数的代码,包括用于类和实例初始化。以及接口初始化的特殊方法 3、方法区在虚拟机启动 阅读全文
posted @ 2022-08-05 21:55 半条咸鱼 编辑
摘要:堆(Heap)概述 1、堆针对一个 JVM 进程是唯一的 (1)即一个进程只有一个 JVM (2)进程包含多个线程,多个线程共享同一堆空间 (3)一个 JVM 实例只存在一个堆内存,堆是 Java 内存管理的核心区域 (4)所有线程共享 Java 堆,但还可以划分出线程私有的缓冲区(TLAB:Thr 阅读全文
posted @ 2022-08-05 01:48 半条咸鱼 编辑
摘要:本地方法(Native Method) 1、本地方法是一个 Java 调用非 Java 代码的接囗,是一种 Java 方法,该方法的实现由非 Java 语言实现,比如:C 2、该特征并非 Java 所特有,很多其它的编程语言都有这一机制,比如:在 C++中,可以用 extern "c" 告知 C++ 阅读全文
posted @ 2022-08-04 18:29 半条咸鱼 编辑
摘要:内存中的栈与堆 1、栈 (1)是运行时的单位 (2)解决程序的运行问题,即程序如何执行,即如何处理数据 2、堆 (1)是存储的单位 (2)解决数据存储的问题,即数据存放方式,存放位置 Java 虚拟机栈 1、Java Virtual Machine Stack 2、每个线程在创建时,都会创建一个虚拟 阅读全文
posted @ 2022-08-04 16:57 半条咸鱼 编辑
摘要:概述 1、内存 (1)硬盘和CPU的中间仓库及桥梁 (2)承载 OS 和应用程序的实时运行 JVM 内存布局规定 Java 在运行过程中内存申请、分配、管理的策略 (3)保证 JVM 高效稳定运行 (4)不同 JVM 对于内存的划分方式和管理机制存在着部分差异 2、JVM 定义若干种程序运行期间,会 阅读全文
posted @ 2022-08-03 19:21 半条咸鱼 编辑
摘要:类加载器子系统作用 1、负责从文件系统或网络中加载 .class 文件,.class 文件在文件开头有特定的文件标识 2、ClassLoader 只负责 .class 文件的加载,至于它是否可以运行,则由 Execution Engine 决定 3、加载的类信息存放在一块内存空间(方法区),除了类的 阅读全文
posted @ 2022-08-03 15:03 半条咸鱼 编辑
摘要:字节码 1、任何能在 JVM 平台上执行的字节码格式都是一样的,统称为 JVM 字节码 2、不同的编译器,可以编译出相同的字节码文件,字节码文件也可以在不同的 JVM 上运行 3、JVM 与 Java 语言并没有必然的联系,它只与特定的二进制文件格式:Class 文件格式所关联,Class 文件中包 阅读全文
posted @ 2022-08-02 22:55 半条咸鱼 编辑

点击右上角即可分享
微信分享提示