当前位置: 首页 > wzjs >正文

单仁咨询建设网站百度竞价推广账户

单仁咨询建设网站,百度竞价推广账户,如何查看网站名称,赣州网站建设服务目录 1. JVM 概述 1.1 认识 1 1.2 认识 2 1.3 认识 3 1.4 认识 4 2. JVM 结构 2.1 HotSpot 2.2 运行流程 2.3 补充 3. 架构模型 3.1 基于栈式架构 3.2 基于寄存器架构 3.3 总结 4. JVM 的生命周期 4.1 虚拟机的启动 4.2 虚拟机的执行 4.3 虚拟机的退出 1. JVM …

目录

1. JVM 概述

1.1 认识 1

 1.2 认识 2

1.3 认识 3

1.4 认识 4

2. JVM 结构

2.1 HotSpot

2.2 运行流程

2.3 补充

3. 架构模型

3.1 基于栈式架构

3.2 基于寄存器架构

3.3 总结

4. JVM 的生命周期

4.1 虚拟机的启动

4.2 虚拟机的执行

4.3 虚拟机的退出


1. JVM 概述

如果把核心类库的 API 比作数学公式,那么 Java 虚拟机的知识就好比公式的推导过程 ;

了解 JVM 是一个程序员的内功。

好比张无忌可以速通乾坤大挪移,直达第九层

而苦练此武功数十年的副使杨逍也仅仅是第二层

最重要的原因之一在于张无忌内功深厚

1.1 认识 1

Java语言:一次编译,到处运行

 但需要运行的计算机安装 JVM(JDK 包含 JVM);

 1.2 认识 2

Java 虚拟机不关心运行在内部的程序是何种语言编写的

只关心字节码文件是否符合 Java 虚拟机的标准

只要不同的语言使用编译器生成的字节码文件符合Java 虚拟机的标准

Java 虚拟机都可以运行,

因此,Java 虚拟机 并不是只针对 Java 语言的

同时,该字节码文件可称为 jvm 字节码文件

1.3 认识 3

Java 不是最强大的语言

 但 JVM 是最强大的虚拟机

1.4 认识 4

Java 平台上的多语言混合编程是主流趋势

各种语言都运行在一个虚拟机上,

且编译的字节码文件都符合 JVM 虚拟机的标准

所以,各种语言的交互不存在任何困难;

2. JVM 结构

2.1 HotSpot

Java虚拟机(JVM) 是一种标准的虚拟机规范,用于运行 Java 类文件。JVM 的主要作用是提供一个运行时环境,使 Java 程序能够在不同的硬件和操作系统上运行1。

HotSpot 是 JVM 的一种具体实现,由 Sun 公司开发,现归属于 Oracle 公司。HotSpot 虚拟机是目前使用最广泛的 JVM 实现之一;

2.2 运行流程

下图,从上往下看:

字节码文件作为“原材料”

经类加载器/装载器 将字节码文件加载到内存当中

在内存中的方法区生成大的 class 实例

之后解释器解释运行

2.3 补充

操作系统只识别机器指令,字节码要在 JVM 解释器使用 JIT 编译器编译成机器代码。

【机器指令是计算机处理器(CPU)能够直接识别和执行的命令,其本质是一系列的二进制编码。】

多个线程共用方法区,而每个线程都有唯一的 Java 栈本地方法栈程序计数器

执行引擎包含三部分:解释器JIT 即时编译器(编译器的后端),垃圾回收器(实现垃圾的回收)

3. 架构模型

Java 编译器输入的指令流有两种指令集架构

一种是基于栈的,另一种是基于寄存器

3.1 基于栈式架构

1. 设计和实现更简单,适用于资源受限的系统

2. 避开了寄存器的分配难题:使用零地址指令方式分配

3. 指令流中的地址大部分是零地址指令,其执行过程依赖于操作栈。

        指令集更小,编译器容易实现。

4. 不需要硬件支持,可移植性更好,更好实现跨平台

3.2 基于寄存器架构

1. 典型的应用是 x86 的二进制值指令集

2. 指令集架构完全依赖硬件,可移植性差

3. 性能优秀,执行更高效

4. 花费更少的指令完成一项操作

5. 大部分情况下,基于寄存器架构的指令集往往都以 一/二/三地址指令为主

        而基于栈式架构的指令集以零地址指令为主

3.3 总结

由于跨平台性的设计

Java 的指令都是根据栈来设计的

(不同平台 CPU 架构不同,即不能设计为基于寄存器的)

所以:

跨平台性,指令集小,指令多,执行性能比寄存器差

4. JVM 的生命周期
4.1 虚拟机的启动

Java 虚拟机的启动通过引导类加载器(bootstrap class loader)创建一个初始类(initial class)完成的
该类由虚拟机具体指定

4.2 虚拟机的执行

程序执行时 Java 虚拟机才运行

程序结束时 Java 虚拟机就停止

4.3 虚拟机的退出

程序正常执行结束

程序在执行过程中遇到异常或错误而异常终止

操作系统出现错误而导致 Java 虚拟机进程终止

某线程调用 Runtime 类 或 System 类的 exit 方法,或 Runtime 类的 halt 方法,

        并且 Java 安全管理器也允许这次 exit / halt 操作  

http://www.dtcms.com/wzjs/495415.html

相关文章:

  • 深圳网站设计工资一般多少微信营销成功案例8个
  • 社保减员要怎么做 国税局网站网站如何赚钱
  • 个人网站首页内容百度下载免费安装最新版
  • 临海网站制作费用如何记账交换友情链接时需要注意的事项
  • asp化妆品网站免费b站推广网址有哪些
  • excel中批量做网站的超链接百度seo技术
  • 有哪些做画册的网站什么是优化
  • 广州手机网站建设报价信息发布平台推广
  • 如何借用别人静态网站做模板苏州整站优化
  • 开平网站制作推广普通话宣传海报
  • 张家口网站建设哪家服务好网站制作公司官网
  • 开放平台设计seo云优化如何
  • 做网站最好的软件网站建设策划方案
  • 简洁风格的网站模板网站开发的流程
  • 我做网站百度软件
  • flash 好的网站竞价排名规则
  • 做中英双语切换的网站百度一下首页百度一下
  • 电脑配件电子商务网站设计方案免费制作链接
  • 手机网站左右滑动互联网营销师报名官网
  • 网站美化教程下载pc网站优化排名软件
  • 平顶山市网站建设公司外贸定制网站建设电话
  • 长春网站建设网诚传媒盘多多百度网盘搜索引擎
  • 首都航空公司官方网站百度搜索推广怎么做
  • 响应式网站建设服务慧聪网seo页面优化
  • win2003建设网站代写
  • 电子商务网站建设一般流程武汉seo顾问
  • 网站定制化开发介绍建设网官方网站
  • 配送系统网站怎么做搜索引擎优化的简称
  • 网站建设首页模板软件外包网站
  • 双语网站用什么程序做品牌营销理论