首页 > 编程语言 >JVM-Chapter_4_程序计数器

JVM-Chapter_4_程序计数器

时间:2022-09-27 09:48:09浏览次数:51  
标签:Chapter PC 计数器 指令 线程 JVM 寄存器

PC Redister介绍

JVM中的程序计数寄存器(Program Counter Register) 中,Register 的命名源于CPU的寄存器,寄存器存储指令相关的现场信息。CPU只有把数据装载到寄存器才能够运行。

这里,并非是广义上所指的物理寄存器,或许将其翻译为PC计数器(或指令计数器)会更加贴
切(也称为程序钩子),并且也不容易引起一些不必要的误会。JVM中的PC寄存器是对物理PC
寄存器的一种抽象模拟。

作用

PC寄存器用来存储指向下一条指令的地址,即将要执行的指令代码。由执行引擎读取下一条指令。

  • 它是一块很小的内存空间,几乎可以忽略不记。但也是运行速度最快的存
    储区域。
  • 在JVM规范中,每个线程都有它自己的程序计数器,是线程私有的,生命
    周期与线程的生命周期保持- -致。
  • 任何时间一个线程都只有一个方法在执行,也就是所谓的当前方法。程
    序计数器会存储当前线程正在执行的Java方法的JVM指令地址。或者,如果是在执行native方法,则是未指定值(undefned) 。
  • 它是程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础
    功能都需要依赖这个计数器来完成。
  • 字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的
    字节码指令。
  • 它是唯一一个在Java虚拟机规范中没有规定任何OutOtMemoryError
    情况的区域。

标签:Chapter,PC,计数器,指令,线程,JVM,寄存器
From: https://www.cnblogs.com/tothk/p/16733417.html

相关文章

  • 《JavaScript高级程序设计》Chapter04 Variable,Scope,Memory
    原始值&引用值原始值(primitivevalue):Undefined,Null,Boolean,Number,String,Symbol按值访问,直接操作存储在变量中的实际值引用值(referencevalue):Object......
  • Jvm(day3—内存模型)
    Jvm内存模型 名称说明方法区存储:类的元信息、静态变量、常量jdk1.8之后,用元空间替换了方法区,且元空间的内存不在jvm中,而是用的本地内存。堆区存储:对象......
  • JVM-Chapter_2_类加载子系统
    类加载子系统的作用类加载子系统负责从文件系统或者网络中加载class文件,class文件在文件的开头有特定的文件标识。ClassLoader只负责class文件的加载,至于它是否可以运行......
  • Jvm(day2—class初始化过程)
    Class初始化过程  加载jvm将.class文件以二进制的形式读取到内存(.class文件本身是2进制的,但其文件内容是16进制的字节码),存放在方法区(类的元信息),并在堆区创建......
  • Jvm(day1—基础篇)
     Jvm基础知识点 jvm、jre、jdk的关系?jvm:java虚拟机,能够识别.class文件,解析指令并调用操作系统上的函数完成操作;jre:java运行时环境(javaruntimeenvi......
  • 《JavaScript高级程序设计》Chapter03学习笔记
    Chapter03JavaScriptLanguageSyntax类C区分大小写,标识符可以字母、下划线(_)、美元符号($)开头语句以分号(;)结尾:虽然不加分号也是被允许的,但会导致性能的降......
  • 性能测试之jvm
    浅谈一下在性能测试中,遇到java应用出现OOM时(内存泄漏,FGC),作为非专业java开发的测试人员如何去分析,以及调试jvm参数。在开始进行测试前,先对jvm内存分配有一个大概的了解.......
  • jvm简单介绍
    jvm是一种用于计算设备的规范,它是一种虚构出来的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现 JVM和操作系统的关系我们的操作系统是没法识别.cl......
  • QL Server 2005性能计数器错误的解决办法
    查看安装帮助后,发现有这一段话:1在MicrosoftWindows2003或WindowsXP桌面上,依次单击“开始”、“运行”,然后在“打开”中键入regedit.exe,再单击“确定”。在......
  • JVM学习笔记记录
    目录JVM学习记录一、什么是JVM1.1、定义:1.2、优点1.3、JVM、JRE和JDK区别二、内存结构2.1、整体结构2.2、程序计数器2.3、虚拟机栈问题辨析内存溢出线程运行诊断3、本地方......