首页 > 其他分享 >初识虚拟机JVM

初识虚拟机JVM

时间:2023-07-11 23:13:14浏览次数:38  
标签:JAVA 字节 虚拟机 初识 JVM 代码

初识JVM

(JAVA Virtual Machine)

​ JVM是一种规范,可以使用软件来实现,也可以使用硬件来实现,就是一个虚拟的用于执行bytecodes 字节码的计算机。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。

​ JVM负责将java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。JAVA提供了另一种 解释运行的方法JIT(just in time),可以一次解释完,再运行特定平台上的机器码,高级的JIT可以只能 分析热点代码,并将这些代码转成本地机器码,并将结果缓存起来,下次直接从内存中调用,这样就大大提高了执行JAVA代码的效率。这样就实现了跨平台、可移植的功能。

  • JVM是指在一台计算机上由软件或硬件模拟的计算机;它类似一个小巧而高效的CPU。

  • byte-code代码是与平台无关的是虚拟机的机器指令。

  • Java字节代码运行的两种方式:

  1. 方式interpreter(解释)
  2. Just-in-time(即时编译):由代码生成器将字节代码转换成本机的机器代码,然后可以以较高速度执行。 JAVA的跨平台实现的核心是不同平台使用不同的虚拟机 不同的操作系统有不同的虚拟机。

Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处 运行”。

标签:JAVA,字节,虚拟机,初识,JVM,代码
From: https://www.cnblogs.com/Eric-zheng/p/17546210.html

相关文章

  • java中虚拟机栈是线程共享的吗?
    在Java中,每个线程都有自己的虚拟机栈。虚拟机栈是用于存储线程执行方法时的局部变量、方法参数、方法调用和返回的数据等信息的内存区域。每个方法在执行时都会在虚拟机栈上创建一个称为"栈帧"的数据结构,栈帧中包含了方法的局部变量表、操作数栈、动态链接等信息。由于每个线程都......
  • Java语言初识
    Java语言入门Java的特性和优势简单性:就是c++语法的纯净版。没有头文件,指针运算,结构,联合,操作符重载,虚基类等等。由于语法基于c,因此学习起来完全不费力。面向对象:面向对象是一种程序设计技术,他将重点放在数据(即对象)和对象之间的接口上。模拟人的思维写程序,万物皆对象!可移植......
  • 服务器数据恢复-RAID5故障导致ESXI虚拟机数据丢失的数据恢复案例
    服务器数据恢复环境:曙光某型号光纤存储柜,16块光纤磁盘组建了2组RAID5磁盘阵列,每组raid5阵列中有7块成员盘,另外2块磁盘配置为全局热备盘使用。第一组RAID5阵列划分了3个LUN:1个LUN分配给linux主机、第2个LUN分配给sun小型机,第3个LUN分配给esxi主机。第二组RAID5阵列全部分配给一台......
  • JVM(六)堆
    JVM(六)堆1核心概述几乎所有的对象实例和数组都是分配在堆上的(栈不会存储数组和对象,栈帧中的局部变量表只会存储指向堆中实例的引用)一个Java进程对应一个JVM实例,一个JVM实例只存在一个堆内存,堆也是内存管理的核心区域堆和方法区是线程共享的,但堆也有划分的线程私有缓冲区......
  • VMware虚拟机安装完整教程
    一、基础介绍VMWare虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与“多启动”系统相比,VMWare采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。二、准备工作(注意:如果自己下载不......
  • redis初识笔记
    1.连接redis:在redis的某个节点机器上cd到redis_cluster目录,执行./redis-cli-h10.174.65.236 -c-p6381 2.查看所有key:keys*3.查看某个key的命令A.普通key:getkeynameB.map类似的keyHGETALLmapname[二级keyname]......
  • HIVE sql 初识笔记
    一、sql1.向hive里的某张表添加数据loaddatalocalinpath'/home/ocdp/hfb/sex.txt'OVERWRITEintotableTD_NP_ENUM_COC_BATCH1_DAY_COLUMN_013;2.查询select*fromTD_NP_ENUM_COC_BATCH1_DAY_COLUMN_013ast;3.清空表truncatetableTD_NP_ENUM_COC_BATCH1_DAY_C......
  • cenos 虚拟机 如何开放指定端口
    ​ 在CentOS虚拟机中,您可以通过以下步骤来开放指定的端口:查看当前防火墙状态:sudofirewall-cmd--state您将看到防火墙状态,如果状态为"running",则表示防火墙当前正在运行。开放指定端口:sudofirewall-cmd--zone=public--add-port=<端口号>/tcp--perma......
  • cenos 虚拟机 如何开放指定端口
    ​ 在CentOS虚拟机中,您可以通过以下步骤来开放指定的端口:查看当前防火墙状态:sudofirewall-cmd--state您将看到防火墙状态,如果状态为"running",则表示防火墙当前正在运行。开放指定端口:sudofirewall-cmd--zone=public--add-port=<端口号>/tcp--perma......
  • PD虚拟机18.3.2更新,最新parallels desktop下载
    ParallelsDesktop18虚拟机可以在Mac电脑上运行window或其他系统,无需重启电脑,轻松便捷。PD虚拟机18.3.2更新了,最新ParallelsDesktop18修复了一些问题,想要体验最新Mac PD虚拟机18.3.2中文版虚拟机的朋友,小编为大家带来了最新parallelsdesktop下载安装包及详细的安装教程,有需要的......