Java程序员从笨鸟到菜鸟之(九十二)深入java虚拟机(一)——java虚拟机底层结构详解

本文深入探讨了Java虚拟机(JVM)的底层结构,包括JVM寄存器、栈结构、碎片回收堆和存储区。JVM通过软件模拟实现硬件功能,其中寄存器仅设4个,栈用于存储信息,堆负责对象实例存储,存储区分为常量缓冲池和方法区。JVM的垃圾回收机制保证了内存的有效管理。文章还介绍了Java程序的执行流程,以及JVM的生命周期和运行过程。
摘要由CSDN通过智能技术生成

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188

  • 欢迎关注微信账号:java那些事:csh624366188.每天一篇java相关的文章 

         在以前的博客里面,我们介绍了在java领域中大部分的知识点,从最基础的java最基本语法到SSH框架。这里面应该包含了在java领域里面的大部分内容了吧。但是,那些知识点是让我们从一个应用的层面上了解了javajava程序真正底层的运行机制和一些底层虚拟机的工作我们还不了解,虽然这些内容在我们真正的开发中几乎用不到这些底层的东西,但对于我们对java的理解会有比较大的帮助。尤其也对以后java开发中的性能优化有很大帮助,可以使我们减少一些没必要的内存浪费等好处。所以,从今天开始,我将和大家一起来学习一下java虚拟机的内容。从底层开一下java的运行机制。

Java虚拟机

Java虚拟机Java Virtual Machine) 简称JVM Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。下面我们就来看一下这几部分比较重要的java虚拟机的结构

JVM寄存器

所有的CPU均包含用于保存系统状态和处理器所需信息的寄存器组。如果虚拟机定义义较多的寄存器,便可以从中得到更多的信息而不必对栈或内存进行访问,这有利于提高运行速度。然而,如果虚拟机中的寄存器比实际CPU的寄存器多,在实现虚拟机时就会占用处理器大量的时间来用常规存储器模拟寄存器,这反而会降低虚拟机的效率。针对这种情况,JVM只设置了4个最为常用的寄存器。它们是:pc程序计数器,optop操作数栈顶指针 ,frame当前执行环境指针, vars指向当前执行环境中第一个局部变量的指针, 所有寄存器均为32位。pc用于记录程序的执行。optop,framevars用于记录指向Java栈区的指针。

JVM栈结构

作为基于栈结构的计算机ÿ

  • 49
    点赞
  • 247
    收藏
    觉得还不错? 一键收藏
  • 48
    评论
评论 48
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值