《HotSpot实战》读后感
这本书的章节:第一章:初始hotspot第二章:hotspot的启动-------(启动,初始化过程)第三章:类与对象第四章:运行时数据区---------(注意:这是运行时数据区,在初始化的过程中,数据区还不一样,还没有对数据区划分)第五章:垃圾回收第六章:栈第七章:解释器和即时编译器第八章:指令集第九章:虚拟机监控工具
这本书的章节:
第一章:初始hotspot
第二章:hotspot的启动-------(启动,初始化过程)
第三章:类与对象
第四章:运行时数据区---------(注意:这是运行时数据区,在初始化的过程中,数据区还不一样,还没有对数据区划分)
第五章:垃圾回收
第六章:栈
第七章:解释器和即时编译器
第八章:指令集
第九章:虚拟机监控工具
对于这本书,“类与对象”,“运行时数据区”,“垃圾回收”,“栈”,“解释器和即时编译器”,“虚拟机监控工具”这几章东西随处可见,在别的网站或者书本都能理解到,这也是常提的。
对于hotspot指令集可能提到的不多,可以好好研究下。
hotspot的启动过程很少见到,也是对hotspot再一次深入理解的关键。
main:
主要获取jvm 的设置的参数,加载jvmlib本地的c库,设置环境参数,启动线程创建jvm 进程。
javaMain:
加载本地的方法库,创建本地函数指针结构体JNIEnv,将本地的方法需找加载,并将函数指针放入JNIEnv结构体中。
JNI_CreateJavaJVM:
调用本地方法,创建一个用户级别的进程,内核中对应应用级别线程。
add():
添加vm参数信息,环境参数信息。
create:
创建vm进程,接着虚拟机加载模块,输入输出模块,配置launcher模块,初始化os模块,GC模块等。
init_vm_globals:
设置虚拟机选项和参数信息;加载agent库,设置线程栈信息,虚拟机内存划分和全局信息设置,加载jdk 核心类,初始化jvm系统类加载器模块。
更多推荐
所有评论(0)