当前位置: 首页 > news >正文

【面试】介绍一下HotSpot虚拟机

目录

          • 1. 说明
          • 2. 起源与发展
          • 3. 技术特点
            • 3.1 热点代码探测技术
            • 3.2 内存管理
            • 3.3 垃圾收集器
            • 3.4 并发和多线程支持
            • 3.5 指令重排优化
          • 4. 执行模式与性能

1. 说明
  • 1.HotSpot虚拟机是一款由Oracle JDK和OpenJDK广泛使用的Java虚拟机(JVM)。
  • 2.HotSpot虚拟机凭借其高效的热点代码探测技术、灵活的内存管理、多样化的垃圾收集器以及强大的并发与多线程支持等特点,成为了Java领域广泛使用的虚拟机之一。
2. 起源与发展
  • 1.HotSpot虚拟机最初并非由Sun公司开发,是由一家名为Longview Technologies的小公司设计。
  • 2.该虚拟机来源于Strongtalk虚拟机,而Strongtalk虚拟机中的技术又来源于为支持Self语言设计的Self虚拟机。
  • 3.从SUN的JDK版本1.3.1开始,HotSpot虚拟机被引入并作为默认的JVM使用。
  • 4.HotSpot虚拟机在2006年底开源,主要使用C++实现,JNI接口部分用C实现。
3. 技术特点
3.1 热点代码探测技术
  • 1.HotSpot虚拟机通过执行计数器找出最具有编译价值的代码(热点代码),然后通过即时编译器以方法为单位进行编译,从而提高Java运行的性能。
3.2 内存管理
  • 1.HotSpot虚拟机采用对象堆内存布局,包括对象头、实例数据和对齐填充。
  • 2.对象头包含Mark Word(用于存储对象的哈希码信息、GC信息等)和类型指针(指向对象类型元数据的指针)。
3.3 垃圾收集器
  • 1.HotSpot虚拟机提供了多种垃圾收集器,如Serial收集器、ParNew收集器、Parallel Scavenge收集器等,以适应不同的应用场景和性能需求。
3.4 并发和多线程支持
  • 1.HotSpot虚拟机支持多线程并发执行,通过CAS重试保证内存分配操作的原子性。
  • 2.在堆中为每个线程分配一小块内存(TLAB),以减少并发问题并提高性能。
3.5 指令重排优化
  • 1.CPU会充分利用多核能力,将没有依赖关系的代码乱序执行,以提高执行效率。
  • 2.HotSpot虚拟机通过volatile关键字等机制来禁用指令重排,保证多线程环境下的数据一致性。
4. 执行模式与性能
  • 1.HotSpot虚拟机采用即时编译(JIT)技术,将常用的部分代码编译为本地(原生)代码,从而提高Java程序的执行性能。
  • 2.HotSpot虚拟机占据绝对的市场地位,从jdk1.3到现如今jdk14都是Oracle JDK和OpenJDK中默认的虚拟机。
http://www.lryc.cn/news/358702.html

相关文章:

  • 【测试】linux快捷指令工具cxtool
  • css属性值的计算过程
  • 看到大厂工时爆料,我沉默了。。
  • 最大回撤概念与计算
  • K8s Ingress 详解
  • 大模型的崛起与未来展望
  • 让WSL内核使用BBR拥塞控制算法
  • 小程序内的分包与数据共享
  • WordPress子比主题美化-首页动态的图片展示
  • jsp实验19 File
  • 【OpenVINO™】在C#中使用 OpenVINO™ 部署 YOLOv10 模型实现目标
  • RabbitMQ 如何保证消息不丢失
  • 【技术突破】合合信息新品震动业界,TextIn智能抽取,是不是藏了黑科技?
  • Transformer模型学习(1)
  • TinTinLand Web3 + AI 共学月|五周上手,捕获浪潮碰撞下的无限机遇
  • 渗透课程第二阶段--Part1--信息收集
  • ubuntu22 搭建nginx高可用集群(VIP(keepalived) + 负载均衡)
  • QT 编译Lua 动态库,使用Lua脚本混合编程
  • 关于不均衡数据的探究
  • LwIP 之十 详解 TCP RAW 编程、示例、API 源码、数据流
  • 【京东评论】数据源——Python提升获取效率▼
  • Java大厂面试题第2季
  • 探索无限可能性——微软 Visio 2021 改变您的思维方式
  • Linux CFS调度器之周期性调度器scheduler_tick函数
  • git生成密钥(免密)
  • 山东大学软件学院2021级编译原理回忆版
  • 为什么都说视频号小店值得做,具体该怎么做?新手必学
  • 网络安全岗秋招面试题及面试经验分享
  • 如何实现一个AI聊天功能
  • 实战16:基于apriori关联挖掘FP-growth算法挖掘关联规则的手机销售分析-代码+数据