虚拟机jvm构造原理
原文链接:http://hi.baidu.com/feiruinet/blog/item/37ff8019b3cd894843a9ada5.html================================================================
原文链接:http://hi.baidu.com/feiruinet/blog/item/37ff8019b3cd894843a9ada5.html
==================================================================================================================================
一:什么是虚拟机
计算机通过软件来模拟来实现的一个类似硬件的机器,包括:处理器,堆栈,寄存器,指令系统,它是为了解决java跨平台而采用的一个中间的解决方案,只要你的语言代码最终能编译为java的中间代码.class字节码,你就可以使用虚拟机来解释你的代码。
二:虚拟机存在的环节
1.讲到虚拟机,我们先看看虚拟机在整个java平台上的位置结构:
2.整个java平台包含:java编程语言,java接口API,java代码编译后的字节码,以及虚拟机
3.可以看到,java虚拟机在整个Java平台环节中,占据了非常重要的环节,从代码编译好后,调用java类库,以及代码的运行都交给了java虚拟机,虚拟机本身就是为了解决java跨平台而存在的,所以虚拟机本身肯定也包含了一个计算机所包含的内容:cup,堆栈,寄存器,指令器等,下面就重点说下虚拟机内部的构造情况。
三:虚拟机内部构造
1.内部结构:
1)指令集
2)java堆
3)java寄存器
4)垃圾回收区
5)方法区域
2.java指令集:支持248个字节码,每一个字节码代表一个cpu运算操作
3.java堆:保存运行时数据的保存,eg:类的实例以及数据占据的空间分配等。
4.java垃圾回收区:负责java堆里不再使用的内存空间的回收,回收后再供java堆使用,具体的回收算法,以后再单独讨论
5.方法区:保存编译好的方法java代码
6.寄存器:保存机器的运行时状态
更多推荐
所有评论(0)