wordpress WebStorm 以太坊 editor extjs6.5 authentication mysqli arm seo Validator 后台管理系统模板 郑州小程序公司 jquery each wps临时文件 查看mysql是否启动 matlab自然对数 安装python python抛出异常 java案例 java学习基础 java写文件 java比较字符串 java常用数据结构 魔兽世界字体包 广告代码 tar文件怎么打开 redis入门指南 m4a转mp3格式转换器 小米5c拆机 winhex使用教程 ad19 gilisoft 福昕阅读器绿色版 0x00000057 jdk9下载 方正兰亭粗黑字体下载 蜘蛛皮肤 沉沦之城 appsync补丁 兽之祝福
当前位置: 首页 > 学习教程  > 编程语言

JVM体系笔记(2)

2020/9/19 16:17:38 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

第一部分

  第一张 走进Java

     这一章主要讲述的是 Java发展的历程和不同公司研发Java虚拟机(虚拟机家庭丰富的恩怨纠葛)。在这个虚拟机家庭中HotSpot以他独有的优势在虚拟机中独占鳌头,经久不衰。还有就是最后一节是一个实战事例,就是自己编译JDK(如果window系统可以安装VMware下安装Linux系统(ubunto版本)搭建编译环境),这个例个人感觉很不错,自己也在着手在干,也希望有兴趣的同学也去做一做。

    第一点 Java技术体系

      按照功能划分:  Java核心类库, Java虚拟机,  Java程序设计语言。

      按照产品划分:  1. Java Card  支持Java小程序运行在小内存设备上的平台。

               2. Java ME  支持Java程序运行在移动终端上的平台。

               3. Java SE  支持面向桌面级应用上的平台。

               4. Java EE 支持使用多级架构的企业应用的Java平台。 

     第二点 Java虚拟机家族

          1)Java虚拟机鼻祖: sun Classic  /  Exact VM

        对于sun Classic虚拟机来说它只是单纯的通过解释器来执行Java程序,而他的编译器需要通过外挂的形式,但是它是世界上第一款商用虚拟机,这样子就足以让我们记住它。

        Exact VM来说,它是有了现代高性能的虚拟机的雏形,对于来说它有准确的管理内存的优势,但是不幸的是不久它就被HotSpot VM取代了。而且在windows和Linux的试用版本都没发布。

        2)武林盟主:HotSpot VM 

        再来说一说HotSpot VM它不仅继承了sun之前虚拟机的准确式的内存管理和他自己的热点代码探测技术,还有优秀的理念和成果。使它成为了全世界使用最多的虚拟机。最后说一下其实它最初不是Java语言研发的,是为Self虚拟机设计的。

        3)小家碧玉:Mobile  /  Embedded VM  

        因为sun/oracle公司在Java ME发展不太好(在智能手机这部分主要是Android和ios占领)所以最终把Java ME这部分规划到Java SE Embedded下。

        4)天下第二:BEA JRockit  /  IBM J9 VM

        BEA JRockit当时主要是为服务器硬件和服务端应用场景的一款虚拟机,它的代码全部是通过即时编译器完成的,而且他的垃圾回收器在当时也是比较优秀的,但是EBA被oracle收购了,他最终永远的停留在R28版本。

        J9是一款和HotSpot相类似的,它发展全面在服务端,桌面开发,嵌入式的多用途的虚拟机,在职责分离和模块化这部分相比HotSpot虚拟机要好。J9这款虚拟机至今还非常活跃。

        5)软硬合璧:BEA Liquid  VM /  Azul VM

        Liquid VM 可以直接运行在自家的Hypervisor系统的虚拟机,可以说他本身就实现操作系统的必要功能,自身就可以直接控制硬件操作,可以最大的发挥硬件的能力,最终它也停止更新。

        Azul VM 是运行在vega系统上的Java虚拟机,他又有优秀的PGC和C4收集器,可以控制多个cpu和管理数百GB内存的硬件资源。

        6)挑战者:Apache Harmony /   Google Android Dalvik VM 

        对于Harmony和Dalvik只能称之为虚拟机不能称Java虚拟机,想要兼容Java体系,必须通过TCK的兼容性测试,由于sun没有把TCK的授权提供给Apache,导致Apache退出JCP组织,sun又开源了JDK,最终导致Apache领导的Apache Harmony不了了之。

        Dalvik是Android的虚拟机,但是在Android 5.0时候就被ART替代。

         7)Graal VM一款在HotSpot虚拟机上开发的跨语言的全栈虚拟机

      第三点 展望未来

        总的来说Java未来是很难被替代的。

未完更新中,还会优化内容的!!!        


本文链接: http://www.dtmao.cc/news_show_200391.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?