发展历史Java虚拟机详解01—-初识JVM

 

着重内容如下:

  • JVM的概念
  • JVM发展历史
  • JVM种类
  • Java语言专业
  • JVM规范

一、JVM的概念:

JVM:

  Java Virtual Machine,意为Java虚拟机。

虚拟机:

  指经软件模拟的富有整体硬件系统机能的、运行在一个全割裂环境遭到之圆计算机体系

来哪虚拟机:

VMWare、Virtual Box:都是应用软件模拟物理CPU的指令集

JVM:使用软件模拟Java 字节码的指令集

 

第二、JVM发展历史:

1、Java发展史:

  • 1996年:SUN JDK 1.0 Classic VM

    纯说运作,使用外挂进行JIT

  • 1997年:JDK1.1 发布

    AWT、内部类、JDBC、RMI、反射

  • 1998年:JDK1.2 Solaris Exact VM

    JIT 解释器混合    

    Accurate Memory Management 精确内存管理,数据类型敏感

    提升了GC性能

    注:JDK1.2上马,称为Java 2,于是起矣J2SE J2EE J2ME
的起,同时进入Swing Collections。

  • 2000年:JDK 1.3,Hotspot 作为默认虚拟机发布

    加入JavaSound

  • 2002年:JDK 1.4【Java真正走向成熟之一个版】,Classic
    VM退出历史舞台

    加入:Assert  正则表达式  NIO  IPV6  日志API  加密类库

  • 2004年:JDK 1.5【至关重要的版本】。即 JDK5 、J2SE 5 、Java 5

泛型

style=”line-height: 1.5; background-color: initial;”>注解

style=”line-height: 1.5; background-color: initial;”>枚举

style=”line-height: 1.5; background-color: initial;”>自动装箱

style=”line-height: 1.5; background-color: initial;”>可变长参数

style=”line-height: 1.5; background-color: initial;”>Foreach循环

  • 2006年:JDK 1.6发布,JDK6

脚本语言支持

JDBC
4.0

style=”line-height: 1.5; background-color: initial;”>Java编译器
API

  • 2011年:JDK7发布

耽搁项目生产及JDK8

style=”line-height: 1.5; background-color: initial;”>G1(全新的GC收集器)

style=”line-height: 1.5; background-color: initial;”>动态语言增强

style=”line-height: 1.5; background-color: initial;”>64各系统中之滑坡指针

NIO
2.0

  • 2014年:JDK8发布【重要之版本】

Lambda表达式

语法增强 
Java类型注解

  • 2016年:计划颁布JDK9

    模块化

 

2、重大历史事件:

  • 使用最常见的JVM为HotSpot

    HotSpot 为Longview Technologies开发,被SUN收购

  • 2006年:Java开源,并建立OpenJDK

    HotSpot  成为Sun JDK和OpenJDK中所带的虚拟机

  • 2008年:Oracle收购BEA

    得到JRockit VM

  • 2009年4月20日:Oracle公司规范颁发为74亿美金的价购回Sun公司。  

得到Hotspot

  • Oracle宣布于JDK8时结JRockit和Hotspot,将及时有限慢慢悠悠好之虚拟机取长补短,最终并二为同样。

    在Hotspot基础及,移植JRockit优秀特性

 

三、JVM种类:

1、KVM:

SUN发布

IOS Android兴起之前,广泛用于手机系统

2、CDC/CLDC HotSpot:

手机、电子书、PDA等装置及树联合的Java编程接口

J2ME的主要片段

3、JRockit:

  BEA 

4、IBM J9 VM:

  IBM内部

5、Apache Harmony:

相当于JDK 1.5与JDK 1.6的Java程序运行平台

暨Oracle关系恶劣,退出JCP ,Java社区的崩溃

OpenJDK出现后,受到挑战,2011年退伍

不曾常见商用经历

对Android的前行出积极性作用

 

季、Java语言专业:

Java语言专业重点体现在以下几点:

  • 语法
  • 变量
  • 类型
  • 文法

 

五、JVM规范:

JVM主要定义二进制class文件和JVM指令集等。

JVM语言专业重大体现于以下几点:

  • Class文件类型
  • 运作时数
  • 帧栈
  • 虚拟机的起步
  • 虚拟机的指令集

除此以外,JVM需要对Java Library
提供以下支持:(因为这些东西没有主意通过java语言本身来落实)

  • 反射 java.lang.reflect
  • ClassLoader
  • 初始化class和interface
  • 康宁息息相关 java.security
  • 多线程
  • 弱引用

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注