JVM概念

  jvm是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完成计算机系统。

  目前主要有vmMare、visual Box和JVM三款虚拟机。

JVM使用软件模拟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性能

2000年 JDK1.3 Hotsport 作为默认虚拟机发布 加入javasound

2002年 JDK 1.4 Classic VM退出历史舞台 Assert 正则表达式 NIO IPV6 日志API 加密类库

2004年发布 JDK1.5 即JDK5、J2SE5、JAVA5

  -泛型

  -注解

  -装箱

  -枚举

  -可变长的参数

  -foreach循环

JDK1.6 JDK6

  -脚本需要支持

  -JDBC4.0

  -JAVA编译器 API

2011年 JDK7发布

  -延误项目推到JDK8

  -G1 全新垃圾收集器

  -动态语言增强

  -64位系统中的压缩指针

  -NIO 2.0

2014年 JDK8 发布

  -Lambda表达式

  -语法增强 java类型注解

2016年JDK9

-模块化

深入JVM内核--JVM简介的更多相关文章

  1. 深入JVM内核--JVM运行机制

    JVM启动流程 JVM基本结构 PC寄存器 每个线程拥有一个PC寄存器 在线程创建时 创建 指向下一条指令的地址 执行本地方法时,PC的值为undefined 方法区 保存装载的类信息 类型的常量池 ...

  2. 【深入JVM内核—原理、诊断与优化】第2期开课了

    [深入JVM内核—原理.诊断与优化]的讲师“葛一鸣”,人称“一哥”,毕业于浙江工业大学,计算机软件与理论专业硕士,是国家认证系统分析师,OCP.2012年出版过<Java程序性能优化>,荣 ...

  3. jvm-垃圾回收gc简介+jvm内存模型简介

    gc是jvm自动执行的,自动清除jvm内存垃圾,无须人为干涉,虽然方便了程序员的开发,但同时增加了开发人员对内存的不可控性. 1.jvm内存模型简介 jvm是在计算机系统上又虚拟出来的一个伪计算机系统 ...

  4. Java JVM监控工具JConsole简介

    Java JVM监控工具JConsole简介 jconsole命令 功能:打开java监视管理控制台 方法: jconsole [选项1] [选项2] …… [选项n] 常用选项: -help     ...

  5. Java基础-JVM调优策略简介

    Java基础-JVM调优策略简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.JVM结构分析 1>.JVM结构图 2>.JVM运行时数据区功能说明 JVM管理的内 ...

  6. JVM性能优化简介

    01. JVM是什么    概述:        大白话:             全称Java Virtual Machine(Java虚拟机), 它是一个虚构出来的计算机, 通过实际的计算机来模拟 ...

  7. JVM内核-原理、诊断与优化学习笔记(二):JVM运行机制

    文章目录 JVM启动流程 PC寄存器 方法区 保存装载的类信息 通常和永久区(Perm)关联在一起 Java堆 Java栈 Java栈 – 局部变量表 ** 包含参数和局部变量 ** Java栈 – ...

  8. JVM内核-原理、诊断与优化学习笔记(一):初识JVM

    文章目录 JVM的概念 JVM是Java Virtual Machine的简称.意为Java虚拟机 虚拟机 有哪些虚拟机 VMWare或者Visual Box都是使用软件模拟物理CPU的指令集 JVM ...

  9. JVM初探 -JVM内存模型

    JVM初探 -JVM内存模型 标签 : JVM JVM是每个Java开发每天都会接触到的东西, 其相关知识也应该是每个人都要深入了解的. 但接触了很多人发现: 或了解片面或知识体系陈旧. 因此最近抽时 ...

随机推荐

  1. Vmotion迁移要求

  2. SQL 2005 带自增列 带外键约束 数据导入导出

    1,生成建表脚本 选中要导的表,点右键-编写表脚本为-create到  ,生成建表脚本 2,建表(在新库),但不建外键关系 不要选中生成外键的那部分代码,只选择建表的代码 3,导数据,用SQL STU ...

  3. jq监控滑动

    $(window).scroll(function () { if ($(window).scrollTop() == $(document).height() - $(window).height( ...

  4. 吴裕雄--天生自然TensorFlow2教程:numpy [ ] 索引

    import tensorflow as tf a = tf.ones([1, 5, 5, 3]) a.shape a[0][0] numpy : 索引 a = tf.random.normal([4 ...

  5. ZJNU 2226 - B.T.B.F

    d为1代表Alice执刀,-1代表Bob执刀记录蛋糕数字为奇数和偶数各自的数量,先看偶数块 如果为偶数的蛋糕为奇数块,则为偶数的蛋糕切完后是Bob持刀,Alice会多吃1,此时要将奇数块蛋糕-1(假设 ...

  6. memcached redis 本质区别是功能多少

    功能: 1.memcached 数据类型比较单一,数据淘汰策略单一,功能简单 2.redis 数据类型比较全面, 数据淘汰策略比较多,功能较强 有持久化能力,可以持久存储少量数据(数据量不会大于本机内 ...

  7. 如何动态调用WebService

    封装WBS类 using System; using System.Collections.Generic; using System.Linq; using System.Web; using Sy ...

  8. list交集、差集、并集、去重并集

    // 交集 List<String> intersection = list1.stream().filter(item -> list2.contains(item)).colle ...

  9. mybatis学习笔记四

    记录下动态sql的常用标签: 1.where 一般用作数据操作添加的条件 例子: <select id="selectByRoleId" resultMap="re ...

  10. python学习——函数返回值及递归

    返回值 return语句是从python 函数返回一个值,在讲到定义函数的时候有讲过,每个函数都要有一个返回值.Python中的return语句有什么作用,今天小编就依目前所了解的讲解一下.pytho ...