JVM的原理和性能调优

news2024/10/1 19:33:45

java是如何做到跨平台?

       将java文件通过javac编辑到JVM中,由JVM根据操作系统(Windows,Linux)的需要,生成出相对应的二进制文件,从而达到跨平台的特性。


JVM的组成

java文件通过javac编译成class文件,然后通过类加载器加载JVM内存区域中,通过字节码执行引擎执行代码

java虚拟机由三部分组成:类加载器,运行时数据区,字节码执行引擎

类加载器:将class文件加载到运行时数据区

运行时数据区包括:堆、栈、本地方法栈、方法区,程序计算器组成

堆:堆是jvm中内存最大的一块区域,通过new关键字创建的对象都会被保存在堆中,被所有线程共享,堆中有常量池,final修饰的变量会被保存在里面

栈:是Java程序运行的地方,线程私有,程序运行的方法及方法中的局部变量都会被保存在栈中

栈有内部变量表,操作数据栈,动态链接,方法出口

内部变量表:用于存储方法参数,局部变量

操作数据栈:执行方法的临时数据区域,操作数据栈的参数可以上任意类型,包括基本类型,和对象的引用(注意是对象的引用,不是对象,对象被保存在堆中,栈只保存临时引用)

动态链接:指向运行时常量池的方法引用

方法出口:指方法执行完毕(两种退出:正常执行完毕,出现异常导致方法结束)

本地方法区:本地方法栈主要用于支持Java程序中调用的本地方法它与Java方法栈类似,但专门用于管理本地方法的调用,每个线程都有自己的本地方法栈,用于存放调用本地方法的信息

方法区:用于存储已被虚拟机加载的信息,例如:类的的信息,常量,常量词,字符字面量,字符常量等

程序计算器:是jvm中较小的一块内存区域,是标识当前字节码文件执行的行号提示器

字节码执行引擎:将字节码文件解释成机器语言并执行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2065773.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

逻辑回归C参数选择,利用交叉验证实现

目录 前言 一、C参数 二、交叉验证 1.交叉验证是什么 2.交叉验证的基本原理 3.交叉验证的作用 4.常见的交叉验证方法 三、k折交叉验证 四、C参数和k折交叉验证的关系 五、代码实现 1.导入库 2.k折交叉验证选择C参数 3.建立最优模型 总结 前言 逻辑回归&#xff0…

TCP vs UDP:揭秘可靠性与效率之争

概述 今天我们开始主要讲解TCP的相关知识点。在之前讲解分层章节的时候,我们提到过一个重要观点。在网络层及以下几层,更多的是让主机与主机建立连接,也就是说你的电脑需要知道另一台电脑在哪里才能连接上它。然而,在网络中的通信…

世界各国-经济距离数据汇总(2005-2022年)

世界各国-经济距离数据汇总(2005-2022年) 经济距离是衡量国家之间经济制度差异的一个重要概念,它不仅包括地理距离,还涵盖了费用、时间、劳动力等因素,并且受到消费者行为的影响。随着全球化的深入发展,国家…

微信H5下载文件、微信浏览器无法下载文件解决方案

手机端的微信访问网页的时候,是禁止直接下载文件的 但是IOS端可以预览.txt/.doc/.docx/.xls/xlsx/.pdf等格式的文件,Android端在下载这些格式的文件时,可以唤起 ‘即将离开微信,在浏览器打开’ 提示 所以,根据手机微…

【计算机组成原理】三、存储系统:3.磁盘存储器(磁盘阵列RAID)

7.磁盘存储器(机械) 考点:磁盘存取时间的计算 与操作系统有重合,操作系侧重算法管理,计组侧重硬件 计算机的外存储器又称为辅助存储器,目前主要使用磁表面存储器。 所谓“磁表面存储”,是指把某…

等保测评基础:了解等级保护的基本概念

在数字化时代,信息安全已成为企业乃至国家层面不可忽视的议题。等级保护制度,作为我国信息安全保障体系的重要组成部分,旨在通过标准化、等级化的安全管理措施,确保信息系统安全可控。本文旨在为初学者提供等保测评的基础知识&…

Aixos食用指南,超全面详细讲解!

前言:axios是目前最流行的ajax封装库之一,用于很方便地实现ajax请求的发送。特意花费了两个小时为大家准备了一份全面详细的Aixos食用指南,需要的小伙伴点个关注 哦~💕 🌈🌈文章目录 Axios 简介 Axios 特…

Java重修笔记 第三十七天 日期类

第一代日期类:Date 1. 通过 new 一个 Date 对象来获取当前时间 2. 通过 SimpleDateFormat 对象来格式化时间的输出 public class Date01 {public static void main(String[] args) {// 获取系统当前时间Date date01 new Date();System.out.println("当前日…

周边乡村游小程序的设计

管理员账户功能包括:系统首页,个人中心,游客,景点信息管理,景点美食管理,美食类型管理,景点攻略管理,特产信息管理,特产类型管理,系统管理 微信端账号功能包…

猫头虎分享:如何选择GPT-4、GPT-4 Turbo、GPT-4o 和 GPT-4o mini?

猫头虎分享:如何选择GPT-4、GPT-4 Turbo、GPT-4o 和 GPT-4o mini? 大家好,我是猫头虎 👋,今天我们要讨论的是在各种场景下如何选择合适的智能助手模型。随着人工智能技术的发展,OpenAI推出了多种型号的GPT…

【C++ Primer Plus习题】2.3

问题: 解答: #include <iostream> using namespace std;void print01() {cout << "三只眼瞎的老鼠" << endl; }void print02() {cout << "看他们怎么跑" << endl; }int main() {print01();print01();print02();print02();r…

EmguCV学习笔记 VB.Net 6.3 轮廓外接多边形

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 EmguCV是一个基于OpenCV的开源免费的跨平台计算机视觉库,它向C#和VB.NET开发者提供了OpenCV库的大部分功能。 教程VB.net版本请访问…

聚类分析|距离与相似系数|层次聚类|K均值聚类|SPSS及Matlab

聚类分析问题描述 聚类分析问题描述 人类认识世界的方法之一就是将事物按照各种属性或特征分成若干类别。 物以类聚、人以群分。分类方法多种多样&#xff0c;简单直接的如高、矮、胖瘦。使用的信息量小&#xff0c;但对类别界限附近的案例&#xff0c;分类结果不一定合适。 …

Linux 命令管道介绍

今天给伙伴们分享一下Linux 命令管道&#xff0c;希望看了有所收获。 我是公众号「想吃西红柿」「云原生运维实战派」作者&#xff0c;对云原生运维感兴趣&#xff0c;也保持时刻学习&#xff0c;后续会分享工作中用到的运维技术&#xff0c;在运维的路上得到支持和共同进步&am…

软考:软件设计师 — 15.数据结构及算法应用

十五. 数据结构及算法应用 数据结构及算法应用类题目是下午场考试中的第四道题目&#xff0c;分值 15 分&#xff0c;主要以 C 语言填空、算法策略判断和时间复杂度判断为考察形式&#xff0c;建议拿到 6 分以上。 1. 解题技巧 算法策略与时间复杂度部分详细内容可以参考文章…

测试干货 | 如何选择合适的半导体检测方法?看完这篇就明白了!

撰文排版&#xff1a;刘佳 审核指导&#xff1a;肖俊灵 本文较长&#xff0c;建议先收藏后随时查看&#xff01;以后我们将更新更多此类硬核科普&#xff0c;欢迎关注&#xff01; 半导体材料作为半导体产业链中的重要支撑&#xff0c;包括以硅、锗等为代表的元素半导体材料和以…

图与树的基本概念

目录 引言 图与树结构的重要性 图的基本概念 图的表示方式 图的遍历算法 树的基本概念 树的定义与性质 树的遍历 二叉树与多叉树的概念 图与树的高级应用 最短路径算法 最小生成树算法 总结与应用 综合实例分析 引言 在计算机科学的世界中&#xff0c;图和树是两…

商圈停车泊位实时查询与推荐系统 项目编号:17259(案例分享)

摘 要 在当今城市化进程加快的背景下&#xff0c;城市停车问题日益突出&#xff0c;给市民出行带来诸多不便。为解决停车难题&#xff0c;提高停车效率&#xff0c;基于Java开发语言和Spring Boot框架&#xff0c;结合MySQL数据库技术&#xff0c;开发了商圈停车泊位实时查询…

计算机Java项目|基于SpringBoot的网络海鲜市场系统的设计与实现

作者主页&#xff1a;编程指南针 作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验&#xff0c;被多个学校常年聘为校外企业导师&#xff0c;指导学生毕业设计并参…

牛客小白月赛96

牛客小白月赛96 A 最少胜利题数 链接&#xff1a;https://ac.nowcoder.com/acm/contest/84528/A 来源&#xff1a;牛客网 题目描述 本场小白月赛共 6 题&#xff0c;&#x1d435;&#x1d456;&#x1d45b;&#x1d454;&#x1d44f;&#x1d45c;&#x1d45b;&#x1d4…