jvm的体系结构,执行流程

虚拟机与java虚拟机

  • 虚拟机
  • Java虚拟机
  • jvm的位置
  • java的体系结构
  • java的整体结构
  • java代码执行流程

虚拟机

所谓的虚拟机(virtual Machine),就是一台虚拟的计算机。本质上一款软件,用来执行虚拟的计算机指令。大体上,虚拟机分为系统虚拟机和程序虚拟机。

  • 比如virtual Box,Mware就是属于系统虚拟机,他们是对物理计算机的仿真,提供一个可以运行的完整的操作系统的软件平台。
  • 程序虚拟机的典型代表就是java的虚拟机,它专门为执行单个计算机程序而设计,在Java虚拟机中执行的指令我们称为Java字节码指令。
  • 无论是系统虚拟机还是程序虚拟机,在上面运行的软件都被限制于虚拟机提供的资源中。

Java虚拟机

  • Java虚拟机是一台执行Java字节码的虚拟计算机,它拥有独立的运行机制,其运行的Java字节码也未必由Java语言编译而成。

  • JVM平台的各种语言可以共享Java虚拟机带来的跨平台性、优秀的垃圾回器,以及可靠的即时编译器。

  • Java技术的核心就是Java虚拟机(JVM,Java Virtual Machine),因为所有的Java程序都运行在Java虚拟机内部。

  • Java虚拟机就是二进制字节码的运行环境,负责装载字节码到其内部,解释/编译为对应平台上的机器指令执行。每一条Java指令,Java虚拟机规范中都有详细定义,如怎么取操作数,怎么处理操作数,处理结果放在哪里。

 特点:

  1. 一次编译,到处运行
  2. 自动内存管理
  3. 自动垃圾回收功能

jvm的位置

jvm是运行在操作系统之上的,它和硬件没有直接的交互

在这里插入图片描述

java的体系结构

在这里插入图片描述

java的整体结构

  • HotSpot VM是目前市面上高性能虚拟机的代表作之一。
  • 它采用解释器与即时编译器并存的架构。(就时整个过程,有两次编译,进入jvm前的编译成字节码文件和进入jvm后编译成机器码文件)
  • 在今天,Java程序的运行性能早已脱胎换骨,已经达到了可以和C/C++程序一较高下的地步。
    在这里插入图片描述

java代码执行流程

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_45788043/article/details/112727991
今日推荐