Hi,运维,你懂Java吗--No.4:JVM-概述

article/2025/10/2 19:12:02

        作为运维,你不一定要会写Java代码,但是一定要懂Java在生产跑起来之后的各种机制。

        本文为《Hi,运维,你懂Java吗》系列文章 第四篇,敬请关注后续系列文章

        欢迎关注  龙叔运维(公众号)  持续分享运维经验

前言

        本篇对java的JVM进行初步的拆分讲解,希望大家可以有一个整体概念,JVM是java运维工作中很重要的点哦。

1、JVM组成

        JVM核心内容一共分为四大块:类加载器,运行时数据区,本地方法库接口,执行引擎

        而对运维来说最重要的就是要掌握运行时数据区。

2、类加载器

        类加载器的作用就是将class文件字节码内容加载到JVM的运行时数据区中。

        类加载器按照加载的内容来看可以分为:        

  • 启动类加载器(Bootstrap ClassLoader): 负责加载存放在 <JAVA_HOME>\lib 目录中的核心类库,如rt.jar、resources.jar等(或者被 -Xbootclasspath 参数所指定的路径中的,并且是虚拟机识别的类库)。这个加载器是 C++ 编写的,随着JVM启动。
  • 扩展类加载器(Extension ClassLoader): 负责加载<JAVA_HOME>\lib\ext 目录中的类库,(同样也可以用 java.ext.dirs 系统变量来指定路径)。
  • 应用程序类加载器(Application ClassLoader): 负责加载用户类路径 classpath 上所有的 jar 包和 .class 文件。
  • 自定义类加载器: 可以支持一些个性化的扩展功能。

3、运行时数据区

        对于运维来讲,运行时数据区是最需要掌握的知识点

        分为 方法区(元空间)、堆、虚拟机栈、本地方法栈、程序计数器

        这里不多讲,回单开章节详细讲解

4、本地方法库接口

        首先,什么是本地方法?

        一个Native Method 就是一个java调用非java代码的接口。该方法的实现由非java语言实现,比如C 。定义一个native method时,并不提供实现体,因为由非java实现。


        本地方法库接口的作用是融合不同的编程语言为java所用。

5、执行引擎

        类加载器只负责加载,而class文件是否可以执行,这里就要看执行引擎的了。

                执行引擎的任务就是将字节码指令解释/编译为对应平台上的本地机器指令才可以。简单来说,JVM中的执行引擎充当了将高级语言翻译为机器语言的译者。

        执行引擎在执行的过程中究竟需要执行什么样的字节码指令完全依赖于JVM中的程序计数器。每当执行完一项指令操作后,程序计数器就会更新下一条需要被执行的指令地址。

————完


http://chatgpt.dhexx.cn/article/JRFRkfue.shtml

相关文章

JAVA开发与运维(docker运维常规操作)

使用docker来安装软件步骤。 1、先装好docker环境。 1.4 docker环境及部署 1.4.1 版本 Client: Docker Engine – Community version: 20.10.12 Server: Docker Engine – Community version: 20.10.12 1.4.2 部署 1.用yum拉取阿里云镜像: yum-config-manager --add-repo …

JAVA开发运维(扁鹊见齐桓公之系统运维之痛)

引言&#xff1a; 扁鹊见蔡桓公&#xff0c;立有间&#xff0c;扁鹊曰&#xff1a;“君有疾在腠理&#xff0c;不治将恐深。”桓侯曰&#xff1a;“寡人无疾。”扁鹊出&#xff0c;桓侯曰&#xff1a;“医之好治不病以为功&#xff01;” 居十日&#xff0c;扁鹊复见&#xff0…

死磕原理!java运维工程师做什么

前言 今天中午收到我司安全部发了一封邮件:Jackson存在安全漏洞。查了一下,这件事并不算很新鲜了(已经过了5天的样子),本文来聊聊吧。 说起来还蛮戏剧化:阿里云向Jackson官方提交了一个Jackson序列化安全漏洞。众所周知,在国内关于JSON库使用有两大主要阵营:国际著名…

java项目运维手册

1、生成dump文件 jmap -dump:live,formatb,fileheap-dump-1829.bin 32171 2、查看子文件夹磁盘空间占用情况 du -sh * 3、实时监控gc情况&#xff1a; jstat -gcutil pid interval(ms) 4、开启jmx远程监控&#xff1a; 执行foo.jar启动命令 java -Dcom.sun.management.j…

java运维调优的神器Arthas---入门

Arthas Arthas是一款阿里巴巴开源的 Java 线上诊断工具,功能非常强大,可以解决很多线上不方便解决的问题 一、安装启动arthas 1.下载arthas-boot.jar 官网&#xff1a;https://arthas.aliyun.com/doc/quick-start.html Maven下载&#xff1a; com.taobao.arthas arthas-sp…

JAVA开发运维(系统上到生产环境准备工作)

一、前言 java项目在开发环境开发完成&#xff0c;在测试环境测试没有问题后&#xff0c;就需要发布到生产环境&#xff0c;如果系统是对公众的&#xff0c;那就需要很多工作了。比如服务器申请&#xff0c;域名申请&#xff0c;渗透测试&#xff0c;漏洞扫描&#xff0c;公网…

Hi,运维,你懂Java吗-No.1:初识Java

作为运维&#xff0c;你不一定要会写Java代码&#xff0c;但是一定要懂Java在生产跑起来之后的各种机制。 本文为《Hi&#xff0c;运维&#xff0c;你懂Java吗》系列文章 第一篇&#xff0c;敬请关注后续系列文章 欢迎关注 龙叔运维&#xff08;公众号&#xff09; 持续分享运…

JAVA开发运维(软件一体化可观测平台的功能)

软件可观测是软件度量的一种。旨在对软件的数字体验、业务运营、网络性能、应用性能、基础设施、IT流程进行监控和数据刻画。使开发人员和运维人员更好的对软件进行优化维护。 一、数字体验&#xff1a; 用户会话 了解用户使用路径&#xff0c;追查使用过程中影响用户体验的…

JAVA开发运维(DevOps过程)

DevOps开发运维的一套方法论。这边文章主要借鉴万达的DevOps的建设过程。谈谈DevOps主要解决那些问题和怎么解决。 DevOps的是一种IT项目开发管理方法论&#xff0c;它旨在提供全面的持续集成、持续交付等能力&#xff0c;并持在续进行过程度量和改进&#xff0c;不断提升 IT 运…

Java项目运维总结记录

一、常见故障 1.1、Java项目CPU耗用突增100%分析定位 1&#xff09;执行top命令确认当前占用cpu的的java进程&#xff1b;以下是一些快捷键&#xff1a; ?&#xff1a;显示在top当中可以输入的命令 P&#xff1a;以CPU的使用资源排序显示 M&#xff1a;以内存的使用资源排序…

初级车道线检测

前言 上一期的无人驾驶技术入门&#xff0c;我们以障碍物的跟踪为例&#xff0c;介绍了卡尔曼滤波器的原理、公式和代码的编写。接下来的几期无人驾驶技术入门&#xff0c;我会带大家接触无人驾驶技术的另一个重要的领域——计算机视觉。 在无人驾驶技术入门&#xff08;五&a…

c++ 车道线检测

利用概率霍夫变换&#xff0c;进行车道线的简单检测 1、首先编写一个头文件&#xff08;也可以在源文件中写一个类&#xff0c;一样的&#xff09; #ifndef LANE_H //头文件的写法格式 if not define #define LANE_H //_LANE_H_ 为头文件Lane.h的大写&#xff0c;防止被重复…

简述车道线检测

针对车道线检测的任务&#xff0c;我们需要弄清楚几个问题&#xff1a; 1. 车道线的表示形式&#xff1f; 输出类型&#xff1a;掩码/点集/矢量线条实例化&#xff1a;每个车道线是否形成实例分类&#xff1a;是否对车道线进行了分类&#xff08;单白、双黄等&#xff09;提前定…

PaddleSeg:车道线检测

向AI转型的程序员都关注了这个号&#x1f447;&#x1f447;&#x1f447; 0.1 任务 要求参赛者利用提供的训练数据&#xff0c;设计一个车道线检测和分类模型&#xff0c;来检测测试数据中车道线的具体位置和类别。样例示范&#xff1a; 0.2 数据集描述 本次赛题数据集包括x张…

3D车道线检测杂记

3D车道线检测相关论文学习 单目 一、3D-LaneNet: End-to-End 3D Multiple Lane Detection-ICCV2019 0 前言 这篇文章是第一篇通过单目前视相机直接预测3D车道线的论文。 一般想得到3D车道线信息有两种途径&#xff1a; 一种是利用离线高精度地图以及准确的自车定位信息&a…

车道线检测-LSTR-论文学习笔记

论文&#xff1a;《End-to-end Lane Shape Prediction with Transformers》代码&#xff1a;https://github.com/liuruijin17/LSTR地址&#xff1a;https://arxiv.org/abs/2011.04233v2内容&#xff1a;使用 CNNTransformer&#xff0c;基于三次曲线拟合车道线 整体结构 模型输…

车道线检测学习总结

之前学习了一个非常酷炫的车道线检测项目&#xff1a;Advanced Lane Finding Project 现在写一个学习笔记&#xff0c;备注一下&#xff0c;方便以后复习&#xff1a; 项目总体流程如下&#xff1a; 第一步&#xff0c;采用棋盘对相机进行校正&#xff1a; 第二步&#xff0c;对…

2D车道线检测算法总结

关于2D车道线检测算法的总结主要分为两类&#xff1a;一类基于语义分割来做&#xff0c;一类基于anchor和关键点来做。还有基于曲线方程来做的&#xff0c;但是落地的话还是上面两种为主。 一、基于语义分割的车道线检测算法 1.LaneNet 论文创新点&#xff1a; 1.将车道线检…

车道线检测-Eigenlanes 论文学习笔记

论文&#xff1a;《Eigenlanes: Data-Driven Lane Descriptors for Structurally Diverse Lanes》 代码&#xff1a;https://github.com/dongkwonjin/Eigenlanes 核心&#xff1a;在 Eigenlane Space 中检测车道线 创新点 Eigenlane&#xff1a;数据驱动的车道描述符&#xff…

OpenCV的车道线检测

资源下载地址&#xff1a;https://download.csdn.net/download/sheziqiong/85604275 资源下载地址&#xff1a;https://download.csdn.net/download/sheziqiong/85604275 final_mark.py是最终&#xff0c;前面的都是一部分一部分测试的功能&#xff0c;用的是霍夫变换拟合&…