`
ol_beta
  • 浏览: 290346 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

[转载]hotspot源码(JDK7)

阅读更多

源码结构图,方便理解:

 

├─agent                            Serviceability Agent的客户端实现
├─make                             用来build出HotSpot的各种配置文件
├─src                              HotSpot VM的源代码
│  ├─cpu                            CPU相关代码(汇编器、模板解释器、ad文件、部分runtime函数在这里实现)
│  ├─os                             操作系相关代码
│  ├─os_cpu                         操作系统+CPU的组合相关的代码
│  └─share                          平台无关的共通代码
│      ├─tools                        工具
│      │  ├─hsdis                      反汇编插件
│      │  ├─IdealGraphVisualizer       将server编译器的中间代码可视化的工具
│      │  ├─launcher                   启动程序“java”
│      │  ├─LogCompilation             将-XX:+LogCompilation输出的日志(hotspot.log)整理成更容易阅读的格式的工具
│      │  └─ProjectCreator             生成Visual Studio的project文件的工具
│      └─vm                           HotSpot VM的核心代码
│          ├─adlc                       平台描述文件(上面的cpu或os_cpu里的*.ad文件)的编译器
│          ├─asm                        汇编器接口
│          ├─c1                         client编译器(又称“C1”)
│          ├─ci                         动态编译器的公共服务/从动态编译器到VM的接口
│          ├─classfile                  类文件的处理(包括类加载和系统符号表等)
│          ├─code                       动态生成的代码的管理
│          ├─compiler                   从VM调用动态编译器的接口
│          ├─gc_implementation          GC的实现
│          │  ├─concurrentMarkSweep      Concurrent Mark Sweep GC的实现
│          │  ├─g1                       Garbage-First GC的实现(不使用老的分代式GC框架)
│          │  ├─parallelScavenge         ParallelScavenge GC的实现(server VM默认,不使用老的分代式GC框架)
│          │  ├─parNew                   ParNew GC的实现
│          │  └─shared                   GC的共通实现
│          ├─gc_interface               GC的接口
│          ├─interpreter                解释器,包括“模板解释器”(官方版在用)和“C++解释器”(官方版不在用)
│          ├─libadt                     一些抽象数据结构
│          ├─memory                     内存管理相关(老的分代式GC框架也在这里)
│          ├─oops                       HotSpot VM的对象系统的实现
│          ├─opto                       server编译器(又称“C2”或“Opto”)
│          ├─prims                      HotSpot VM的对外接口,包括部分标准库的native部分和JVMTI实现
│          ├─runtime                    运行时支持库(包括线程管理、编译器调度、锁、反射等)
│          ├─services                   主要是用来支持JMX之类的管理功能的接口
│          ├─shark                      基于LLVM的JIT编译器(官方版里没有使用)
│          └─utilities                  一些基本的工具类
└─test                             单元测试

 

原文地址:http://hllvm.group.iteye.com/group/topic/26998#193368

分享到:
评论
2 楼 a372048518 2012-02-24  
找了好久,谢谢了,很好!
1 楼 jian198001 2012-01-20  
很有用,谢谢

相关推荐

    jdk1.8 下载。 hotspot (包含源码)

    JDK 1.8的HotSpot可能包含了优化的JIT编译策略和垃圾回收算法,例如G1垃圾收集器,它在大内存应用中提供了更好的性能和响应时间。 在JDK 1.8中,还有一项重要改进是 Nashorn JavaScript引擎的引入,这使得Java可以...

    JDK7底层C++源码及hotspot虚拟机源码

    HotSpot源码的分析有助于我们理解JVM的内存模型、垃圾收集机制、类加载过程以及优化策略。在HotSpot中,关键组件如解释器、即时编译器(C1和C2)和运行时系统都有C++实现,这些源码提供了对JVM内部运作的深度洞察。 ...

    hotspot 源码(JDK8)

    《深入剖析JDK8 Hotspot源码》 Hotspot是Oracle JDK中的一个关键组件,它是一款高效的Java虚拟机(JVM)。JDK8u-hotspot源码提供了对Hotspot内部工作原理的深入了解,这对于Java开发者优化性能、调试问题以及理解...

    JDK10(JDK10底层C++源码及hotspot虚拟机源码)

    在HotSpot源码中,我们可以找到以下关键部分: 1. **编译器(Compilers)**:HotSpot包含两个主要的编译器——C1(Client Compiler)和C2(Server Compiler)。C1用于快速启动,而C2用于长期运行的应用,提供更高的...

    Hotspot源码

    Hotspot源码是Java开发中的重要参考资料,它揭示了Java虚拟机(JVM)的工作原理。Oracle JDK中的Hotspot JVM是Java程序运行的核心,负责字节码解释、编译优化以及垃圾回收等关键任务。Hotspot源码的分析有助于开发者...

    java-jdk-hotspot源码

    学习JDK 源码必备,提起HotSpot VM,相信所有Java程序员都知道,它是Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机。 但不一定所有人都知道的是,这个目前看起来“血统纯正”的虚拟机在最初...

    openjdk hotspot源码

    OpenJDK Hotspot源码是Java开发者深入理解Java虚拟机(JVM)工作原理的关键资源。Hotspot JVM是Oracle公司开发的开源Java虚拟机实现,它以高效的性能优化著称,包括即时编译(JIT)和动态优化。在深入探讨Hotspot...

    hotspot-jdk8u262-ga.tar.gz

    HotSpot源码的开放,为开发者提供了深入理解Java运行机制的宝贵资料。在本文中,我们将聚焦于JDK8u262版本的HotSpot虚拟机源码,探讨其关键组件和工作原理,以期提升我们的Java编程技艺。 一、HotSpot虚拟机简介 ...

    hotspot源码

    本文将围绕HotSpot源码,探讨其背后的设计理念与实现细节,帮助读者深化对Java虚拟机的理解。 首先,HotSpot虚拟机的核心功能包括类加载、内存管理、执行引擎和垃圾收集器等。在源码层面,这些功能模块的实现都是...

    Hotspot 虚拟机源码 jdk8u

    VM是虚拟机的规范,HotSpot是jvm的具体实现。 HotSpot包括一个解释器和两个编译器(client 和 server,二选一的),解释与编译混合执行模式,默认启动解释执行。 编译器:java源代码被编译器编译成class文件(字节码...

    JDK6底层C++源码及hotspot虚拟机源码

    《深入解析JDK6底层C++源码与HotSpot虚拟机》 JDK(Java Development Kit)是Java编程语言的开发环境,其中包含了Java运行时环境、编译器以及各种工具。JDK6作为Java历史上的一个重要版本,其底层源码的分析对于...

    JDK9源码(底层C++源码及hotspot虚拟机源码)

    《深入解析JDK9:C++底层源码与HotSpot虚拟机》 JDK9作为Java发展历程中的一个重要版本,引入了多项创新性改进,其中包括对HotSpot虚拟机的优化和增强。HotSpot虚拟机是Oracle JDK的核心部分,负责运行Java应用程序...

    jdk1.8 源码中文版,jdk直接显示中文注释

    下载后直接去本机jdk目录里替换jdk中的src.zip 再打开idea就能看到中文版的源码注释 示例 https://blog.csdn.net/a7459/article/details/106495622

    JVM Hotspot实现源码

    深入理解Hotspot源码,有助于开发者优化Java应用,理解内存管理、垃圾收集的工作原理,以及如何利用JVM工具进行性能调优。对于Java程序员来说,这是一门必不可少的进阶课程,能提升代码编写和问题排查的效率,使应用...

    jdk1.8 sun源码

    5. **编译器优化**:Sun JDK的源码可能包括了HotSpot虚拟机的一些优化技术,比如即时编译(JIT,Just-In-Time)和逃逸分析等。 6. **集合框架**:`java.util`包中的集合类,如ArrayList、HashMap、LinkedList等,其...

    jdk源码-补充缺少sun包下的源码

    2. 深入理解JVM:通过阅读`sun.jvmstat`、`sun.hotspot`等包的源码,可以深入了解JVM的运行机制,如垃圾收集、性能监控等。 3. 解决问题:当遇到JVM级别的问题时,查看sun包源码往往能提供直接的解决方案。 总之,...

    jdk源码包jdk-11.0.1

    7. **jdk.internal.vm.compiler.management**:这部分源码涉及到JVM的内置编译器(如HotSpot JIT编译器)的管理接口。它提供了监控和调整编译策略的手段。 8. **jdk.jdwp.agent**:Java调试协议(JDWP)代理的源码...

    hotspot-jdk8u60:hotspot-jdk8u60源码解析-源码解析

    openjdk是Oracle开源的JDK实现 原始目录介绍 src ├── cpu [CPU相关] | ├── ppc | ├── sparc | ├── x86 | ├── zero ├── os [操作系统相关] | ├── aix | ├── bsd | ├── linux | ├── ...

Global site tag (gtag.js) - Google Analytics