码迷,mamicode.com
首页 > 其他好文 > 详细

JVM内核解读

时间:2016-03-01 00:57:44      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:

JVM是Java Virtual Machine(Java虚拟机)的缩写,这里要分清的是,JVM与java语言是相对独立的,也就是说只要有符合java语言规范的虚拟机也可以运行java语言。

 

1.JVM的启动流程

技术分享

2.JVM基本结构

技术分享

PC寄存器:

1.每个线程拥有一个PC寄存器

2.在线程创建时创建

3.指向下一条指令的地址

4.执行本地方法时,PC的值为undefined

 

方法区:

1.保存装载的类信息

  类型的常量池

  字段,方法信息

  方法字节码

2.通常和永久区(perm)关联在一起

jdk1.6 String等常量信息置放于方法区

jdk1.7 移动到堆

 

java堆:

1.和程序开发密切相关

2.保存应用系统对象

3.所有线程共享

4.对分代GC(垃圾回收)来说,堆也是分代的

5.GC主要工作区间

技术分享

 

java栈:

1.线程私有

2.由一系列帧组成(因此也称作帧栈)

3.帧保存一个方法的局部变量,操作数栈,常量池指针

4.每一个方法调用创建一个帧,并压栈

 

技术分享

 3.堆栈方法交互

技术分享

JVM内核解读

标签:

原文地址:http://www.cnblogs.com/sz-zzm/p/5229405.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!