软件工程师成长日记Java深入学习工作

深入理解 Java 虚拟机(一)走近 Java

2017-01-18  本文已影响6343人  SawyerZh

从今天开始读《深入理解 Java 虚拟机》一书,并开设了同名专题 深入理解 Java 虚拟机。计划在 2 周内将全书内容概览一遍,并会每天更新我的读书笔记。今天的内容是本书的第一章,主要内容是 Java 语言 和 Java 虚拟机的历史,因为这部分内容我个人没有太多的了解,也就没法加入太多个人写作的内容,所以本篇文篇内容大部分是来自对原作者 周志明 博士的 《深入理解 Java 虚拟机》一书的摘抄,也在此声明并表示对原作者的尊重。

1.1 - 概述

Java

后面我们会一起学习 Java 技术中最重要的那些特性和实现原理,在本篇文章中,将会重点介绍 Java 技术体系内容以及 Java 的历史、现在和未来的发展趋势。


1.2 - Java 技术体系


1.3 - Java 发展史

Java-version-history

1.4 - Java 虚拟机发展史

上一节从整个 Java 技术的角度观察了 Java 技术的发展,许多 Java 程序员都会潜意识地把它与 Sun 公司的 HotSpot 虚拟机等同看待,也许还有一些人会注意到 BEA JRockitIBM J9,但对 JVM 的认识不仅仅只有这些。

1.4.1 - Sun Classic / Exact VM

java version "1.2.2" 
Classic VM (build JDK-1.2.2-001, green threads, sunwjit)

1.4.2 - Sun HotSpot VM

1.4.3 - Sun Mobile-Embedded VM / Meta-Circular VM

1.4.4 BEA JRockit / IBM J9 VM

前面介绍了 Sun 公司的各种虚拟机,除了 Sun 公司以外,其他组织、公司也研发过不少虚拟机实现,其中规模最大、最著名的就是 BEAIBM 公司了。

1.4.5 - Azul VM / BEA Liquid VM

我们平时所提及的 “高性能 Java 虚拟机”,一般是指 HotSpot、JRockit、J9这类在通用平台上运行的商用虚拟机,但其实 Azul VMBEA Liquid VM 这类特定硬件平台专有的虚拟机才是 高性能 的武器。

1.4.6 - Apache Harmony / Google Android Dalvik VM

这节介绍的两个虚拟机只能称作 “虚拟机”,而不能称做 “Java 虚拟机”,但是这两款虚拟机(以及所代表的技术体系)对最近几年的 Java 世界产生了非常大的影响和挑战,甚至有些悲观的评论家认为成熟的 Java 生态系统有崩溃的可能。

1.4.7 - Microsoft JVM 及其他

在十几年的 Java 虚拟机发展过程中,除去上面介绍而那些被大规模商业应用过的 Java 虚拟机外,还有许多虚拟机是不为人知的或者曾经 “绚丽” 过但最终湮灭的。我们以其中微软公司的 JVM 为例来介绍一下。


1.5 - 展望 Java 技术的未来

在 2005 年,Java 技术诞生 10 周年的 SunOne 技术大会上,Java 语言之父 James Gosling 做了一场题为 “Java 技术下一个十年” 的演讲。笔者不具备 James Gosling 博士那样高屋建瓴的视角,这里仅从 Java 平台中几个新生的但已经开始展现出蓬勃之势的技术发展点来看一下后续 JDK 版本的一些很有希望的技术重点。

1.5.1 - 模块化

1.5.2 - 混合语言

1.5.3 - 多核并行

1.5.4 - 进一步丰富语法

1.5.5 - 64位虚拟机


悄悄话 🌈


彩蛋 🐣


如果你觉得我的分享对你有帮助的话,请在下面👇随手点个喜欢 💖,你的肯定才是我最大的动力,感谢。

上一篇 下一篇

猜你喜欢

热点阅读