欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
Java virtual machine
来自开放百科 - 灰狐
(版本间的差异)
小 (→文档) |
小 (→图集) |
||
(未显示1个用户的30个中间版本) | |||
第2行: | 第2行: | ||
Java Virtual Machine (JVM) [[Java]]虚拟机 | Java Virtual Machine (JVM) [[Java]]虚拟机 | ||
+ | |||
+ | ==简介== | ||
+ | |||
+ | ==规范== | ||
+ | *JVM 规范里,字节码校验的算法是用 [[Prolog]] 代码定义的。 | ||
+ | |||
+ | ==解释器编译器== | ||
+ | HotSpot虚拟机内置了两个即时编译器(Client Compier和Server Compiler),三种虚拟机执行模式。 | ||
+ | $ java -version | ||
+ | Java HotSpot(TM) 64-Bit Server VM (build 25.60-b22, mixed mode) // 混合模式 | ||
+ | $ java -Xint -version | ||
+ | Java HotSpot(TM) 64-Bit Server VM (build 25.60-b22, interpreted mode) // 解释模式 | ||
+ | $ java -Xcomp -version | ||
+ | Java HotSpot(TM) 64-Bit Server VM (build 25.60-b22, compiled mode) // 编译模式 | ||
==项目== | ==项目== | ||
由John Rose领导的[http://openjdk.java.net/projects/mlvm/ the Da Vinci Machine Project]正致力于让JVM成为动态语言的最佳归宿。 | 由John Rose领导的[http://openjdk.java.net/projects/mlvm/ the Da Vinci Machine Project]正致力于让JVM成为动态语言的最佳归宿。 | ||
+ | *[[HotSpot]] | ||
*[[OpenJDK]] | *[[OpenJDK]] | ||
+ | *[[GraalVM]] | ||
+ | *[https://www.eclipse.org/omr/ Eclipse OMR] [https://github.com/eclipse/openj9 Eclipse OpenJ9] [http://www.infoq.com/cn/news/2018/03/OMR-OpenJ9 Eclipse Open J9:Eclipse OMR项目提供的开源JVM] | ||
*[[Jikes RVM]] | *[[Jikes RVM]] | ||
*[[Apache Harmony]] | *[[Apache Harmony]] | ||
*[[Dalvik]] | *[[Dalvik]] | ||
+ | *[https://source.android.com/devices/tech/dalvik/index.html Android Runtime (ART)] | ||
*[[Kaffe]] | *[[Kaffe]] | ||
*[https://github.com/apigee/trireme trireme] Embed Node.js inside a Java Virtual Machine | *[https://github.com/apigee/trireme trireme] Embed Node.js inside a Java Virtual Machine | ||
+ | *[https://github.com/andrewromanenco/pyjvm PyJVM] [[Python]]实现 | ||
+ | *[https://github.com/deathmarine/Luyten Luyten] An Open Source Java Decompiler Gui for Procyon | ||
==语言== | ==语言== | ||
[https://en.wikipedia.org/wiki/List_of_JVM_languages List of JVM languages] | [https://en.wikipedia.org/wiki/List_of_JVM_languages List of JVM languages] | ||
+ | *[http://docs.huihoo.com/javaone/2015/CON2952-The-Adventurous-Developer-Guide-to-JVM-Languages.pdf The Adventurous Developer's Guide to JVM Languages] | ||
*[[Java]] | *[[Java]] | ||
*[[Scala]] | *[[Scala]] | ||
*[[Clojure]] | *[[Clojure]] | ||
+ | *[https://github.com/Frege/frege Frege] is a [[Haskell]] for the JVM | ||
*[[Groovy]] | *[[Groovy]] | ||
*[[JRuby]] | *[[JRuby]] | ||
第22行: | 第44行: | ||
==文档== | ==文档== | ||
− | *[http://docs.huihoo.com/javaone/2015/ | + | *[https://github.com/doocs/jvm Java 虚拟机底层原理知识总结] |
+ | *[[Performance tuning|JVM Performance tuning]] | ||
+ | *[http://docs.huihoo.com/javaone/2015/CON7570-HotSpot-Synchronization-A-Peek-Under-the-Hood.pdf HotSpot Synchronization: A Peek Under the Hood] | ||
+ | *[http://docs.huihoo.com/javaone/2015/CON1855-Operating-a-16-Terabyte-JVM-and-Living-to-Tell-the-Tale.pptx Operating a 16-Terabyte JVM...and Living to Tell the Tale] | ||
*[http://docs.huihoo.com/javaone/2015/CON2096-GC-Tuning-Confessions-of-a-Performance-Engineer.pdf GC Tuning Confessions of a Performance Engineer] | *[http://docs.huihoo.com/javaone/2015/CON2096-GC-Tuning-Confessions-of-a-Performance-Engineer.pdf GC Tuning Confessions of a Performance Engineer] | ||
*[http://docs.huihoo.com/javaone/2015/CON6512-Beyond-top-Command-Line-Monitoring-on-the-JVM.pdf Beyond top: Command-Line Monitoring on the JVM] | *[http://docs.huihoo.com/javaone/2015/CON6512-Beyond-top-Command-Line-Monitoring-on-the-JVM.pdf Beyond top: Command-Line Monitoring on the JVM] | ||
+ | *[http://docs.huihoo.com/javaone/2015/CON4466-Work-with-Hundreds-of-Hot-Terabytes-in-JVMs.pptx Work with Hundreds of Hot Terabytes in JVMs] | ||
*[http://docs.huihoo.com/javaone/2015/CON7547-Beyond-the-Coffee-Cup-Leveraging-Java-Runtime-Technologies-for-Polyglot.pdf Beyond the Coffee Cup: Leveraging Java Runtime Technologies for Polyglot] | *[http://docs.huihoo.com/javaone/2015/CON7547-Beyond-the-Coffee-Cup-Leveraging-Java-Runtime-Technologies-for-Polyglot.pdf Beyond the Coffee Cup: Leveraging Java Runtime Technologies for Polyglot] | ||
*[http://docs.huihoo.com/javaone/2015/CON1517-An-Introduction-to-JVM-Performance.pptx An Introduction to JVM Performance] | *[http://docs.huihoo.com/javaone/2015/CON1517-An-Introduction-to-JVM-Performance.pptx An Introduction to JVM Performance] | ||
+ | *[http://docs.huihoo.com/javaone/2015/CON6936-Understanding-Java-Garbage-Collection.pdf Understanding Java Garbage Collection] | ||
+ | *[http://docs.huihoo.com/javaone/2015/CON7863-Whats-in-an-Object-Java-Garbage-Collection-for-the-Polyglot.pptx What's in an Object? Java Garbage Collection for the Polyglot] | ||
+ | *[http://docs.huihoo.com/javaone/2015/CON8343-Using-the-Oracle-Solaris-Studio-IDE-to-Dive-Deeply-into-HotSpot-JVM-Source-Code.pdf Using the Oracle Solaris Studio IDE to Dive Deeply into HotSpot JVM Source Code] | ||
*[http://docs.huihoo.com/javaone/2014/CON3294-Introduction-to-HotSpot-Internals.pdf Introduction to HotSpot Internals] | *[http://docs.huihoo.com/javaone/2014/CON3294-Introduction-to-HotSpot-Internals.pdf Introduction to HotSpot Internals] | ||
*[http://docs.huihoo.com/java/javase/jvm-mechanics.pdf JVM Mechanics: When Does the JVM JIT & Deoptimize?] | *[http://docs.huihoo.com/java/javase/jvm-mechanics.pdf JVM Mechanics: When Does the JVM JIT & Deoptimize?] | ||
*[http://docs.huihoo.com/infoq/qcon-jvm-at-taobao-20111023.pdf JVM @ Taobao] | *[http://docs.huihoo.com/infoq/qcon-jvm-at-taobao-20111023.pdf JVM @ Taobao] | ||
*[http://docs.huihoo.com/infoq/qconshanghai-jvm-construction-technology-elastic-cloud-computing-environment-20141018.pdf Java Virtual Machine Virtualiza1on - building scalable JVM for Cloud] | *[http://docs.huihoo.com/infoq/qconshanghai-jvm-construction-technology-elastic-cloud-computing-environment-20141018.pdf Java Virtual Machine Virtualiza1on - building scalable JVM for Cloud] | ||
+ | |||
+ | ==图集== | ||
+ | <gallery> | ||
+ | image:java-virtual-machine.png|JVM | ||
+ | image:jvm-languages.jpg|JVM平台语言 | ||
+ | image:GraalVM.png|GraalVM | ||
+ | image:GraalVM-architecture.png|GraalVM架构 | ||
+ | image:JITWatch.png|JITWatch | ||
+ | </gallery> | ||
==链接== | ==链接== | ||
*[https://github.com/deephacks/awesome-jvm Awesome JVM] [[image:awesome.png]] | *[https://github.com/deephacks/awesome-jvm Awesome JVM] [[image:awesome.png]] | ||
+ | *[https://docs.huihoo.com/java/javase/11/vm/ Java Virtual Machine Guide] | ||
*[http://www.infoq.com/cn/articles/jvm-family Java虚拟机家族] | *[http://www.infoq.com/cn/articles/jvm-family Java虚拟机家族] | ||
*[http://docs.huihoo.com/java/jvmlangsummit JVM Language Summit] | *[http://docs.huihoo.com/java/jvmlangsummit JVM Language Summit] | ||
第41行: | 第80行: | ||
[[category:Java]] | [[category:Java]] | ||
[[category:JVM]] | [[category:JVM]] | ||
+ | [[category:virtualization]] | ||
+ | [[category:huihoo]] | ||
+ | [[category:Huihoo Foundation]] |
2021年7月19日 (一) 12:43的最后版本
您可以在Wikipedia上了解到此条目的英文信息 Java virtual machine Thanks, Wikipedia. |
Java Virtual Machine (JVM) Java虚拟机
目录 |
[编辑] 简介
[编辑] 规范
- JVM 规范里,字节码校验的算法是用 Prolog 代码定义的。
[编辑] 解释器编译器
HotSpot虚拟机内置了两个即时编译器(Client Compier和Server Compiler),三种虚拟机执行模式。
$ java -version Java HotSpot(TM) 64-Bit Server VM (build 25.60-b22, mixed mode) // 混合模式 $ java -Xint -version Java HotSpot(TM) 64-Bit Server VM (build 25.60-b22, interpreted mode) // 解释模式 $ java -Xcomp -version Java HotSpot(TM) 64-Bit Server VM (build 25.60-b22, compiled mode) // 编译模式
[编辑] 项目
由John Rose领导的the Da Vinci Machine Project正致力于让JVM成为动态语言的最佳归宿。
- HotSpot
- OpenJDK
- GraalVM
- Eclipse OMR Eclipse OpenJ9 Eclipse Open J9:Eclipse OMR项目提供的开源JVM
- Jikes RVM
- Apache Harmony
- Dalvik
- Android Runtime (ART)
- Kaffe
- trireme Embed Node.js inside a Java Virtual Machine
- PyJVM Python实现
- Luyten An Open Source Java Decompiler Gui for Procyon
[编辑] 语言
- The Adventurous Developer's Guide to JVM Languages
- Java
- Scala
- Clojure
- Frege is a Haskell for the JVM
- Groovy
- JRuby
- Jython
[编辑] 文档
- Java 虚拟机底层原理知识总结
- JVM Performance tuning
- HotSpot Synchronization: A Peek Under the Hood
- Operating a 16-Terabyte JVM...and Living to Tell the Tale
- GC Tuning Confessions of a Performance Engineer
- Beyond top: Command-Line Monitoring on the JVM
- Work with Hundreds of Hot Terabytes in JVMs
- Beyond the Coffee Cup: Leveraging Java Runtime Technologies for Polyglot
- An Introduction to JVM Performance
- Understanding Java Garbage Collection
- What's in an Object? Java Garbage Collection for the Polyglot
- Using the Oracle Solaris Studio IDE to Dive Deeply into HotSpot JVM Source Code
- Introduction to HotSpot Internals
- JVM Mechanics: When Does the JVM JIT & Deoptimize?
- JVM @ Taobao
- Java Virtual Machine Virtualiza1on - building scalable JVM for Cloud
[编辑] 图集
[编辑] 链接
分享您的观点