• 深入理解java虚拟机一之走进Java


    Java技术体系

    Java程序设计语言、Java虚拟机、Java API类库统称为JDK 
    Java API类库中Java SE API子集和Java虚拟机统称为JRE

    Java发展史

    1991年4月 Java语言的前身-Oak语言启动 
    1995年5月 Oak改名为Java并发布1.0版本 Write Once,Run Anywhere 
    1996年1月 JDK 1.0版本发布 提供的Java虚拟机实现(Sun Classic VM) 、Applet、AWT 
    1997年2月 JDK 1.1版本发布 提供了JAR文件格式、JDBC、JavaBeans、RMI 
    1998年12月 JDK1.2版本发布 Java拆分如下三个方向,虚拟机添加HotSpot VMExact VM 
    Java ME 支持Java程序运行在移动终端的平台 
    Java SE 支持面向桌面级应用的Java平台 
    Java EE 支持使用多层架构的企业应用的Java平台
     
    2000年5月 JDK 1.3版本发布 默认虚拟机改为HotSpot VM 
    2002年2月 JDK 1.4版本发布 提供正则表达式、异常链、NIO、XML解析器和XSLT转换器等 
    2004年9月 JDK 1.5版本发布 提供了自动拆箱、泛型、动态注解、枚举、可变长参数、遍历循环(foreach)等语法特性,提供了java.util.concurrent并发包等,改进了Java内存模型 
    2006年12月 JDK 1.6版本发布 提供动态语言支持、提供编译API和微型HTTP服务器API等,对Java虚拟机内部做了大量改进 
    2009年2月 JDK 1.7版本发布 提供新的G1收集器、加强对非Java语言调用支持、升级类加载架构 
    2009年4月 Oracle公司宣布以74亿美元收购Sun公司

    Java虚拟机发展史

    Sun Classic / Exact VM
    • Sun Classic 是世界第一款商用Java虚拟机,这款虚拟机只能以纯解释器方式执行代码,不能与编译器配合工作,因此执行效率与传统C/C++程序有很大差距;
    • 为了提升Classic VM的运行效率,在JDK 1.2版本时Sun发布了Exact VM虚拟机,具备两级即使编译器、编译器与解释器混合工作模式以及准确式内存管理。虽然Exact VM比CLassic VM先进不少,但是它只存在了很短的时间就被HotSpot VM取代
    Sun HotSpot VM

    HotSpot VM是Sun在1997年收购Longview Technologies公司从而获得的,它既继承了Sun之前两款虚拟机的优点,也有许多自己新的优势,比如热点代码探测技术。

    BEA JRockit / IBM J9 VM
    • JRockit VM曾号称“世界上速度最快的Java虚拟机”,BEA将其发展为专门为服务器硬件和服务端应用场景高度优化的虚拟机,不太关注程序启动速度,不包含解析器实现。
    • J9 VM是由IBM Ottawa实验室一个名为SmallTalk的虚拟机扩展而来,是一款设计上从服务器端到桌面应用再到嵌入式都全面考虑的多用途虚拟机
    Azul VM / BEA Liquid VM
    • Azul VM是Auzl Systems公司在HotSpot基础上大量改进,运行于专有硬件Vega系统上的Java虚拟机
    • Liquid VM即是现在的JRockit VE,是BEA开发运行在自家Hypervisor系统上的JRockit VM的虚拟化版本
    其它VM
  • 相关阅读:
    麻省理工18年春软件构造课程阅读13“调试”
    麻省理工18年春软件构造课程阅读15“相等”
    麻省理工18年春软件构造课程阅读12“接口与枚举”
    麻省理工18年春软件构造课程阅读11“抽象函数与表示不变量”
    麻省理工18年春软件构造课程阅读10“抽象数据类型”
    麻省理工18年春软件构造课程阅读09“避免调试”
    麻省理工18年春软件构造课程阅读08“可变性与不变性”
    麻省理工18年春软件构造课程阅读07“设计规格说明”
    麻省理工18年春软件构造课程阅读06“规格说明”
    麻省理工18年春软件构造课程阅读05“版本控制”
  • 原文地址:https://www.cnblogs.com/ggza/p/9322581.html
Copyright © 2020-2023  润新知