jvm内存模型-程序计数器

程序计数器

  1. 为什么有?答:连续执行 确定下一条指令的地址
  2. 有啥特点?答:1. 小段空间 不溢出 为什么?答 :每次改变上一条值
    2. 当前线程执行的行号指示器 为什么?答:确定下一条指令的地址
    3. 谁来选取下一条指令? 答:字节码解释器
    4. 线程私有 为什么?答: 线程切换 恢复正确的执行位置
    5. 执行java方法: 计数器记录:当前执行的字节码指令的地址
    6. 执行native方法:计数器为空 为什么? 答:方法是通过C(java调用动态库)实现并未编译成需要执行的字节码指令
    7. 执行native方法:多线程怎么实现?
    答:调用系统指令 系统怎么实现多线程? 答:线程映射操作系统模型 有哪些模型? 答:1:1-原生 n:1-线程:用户 m:n-混合
    举例:c实现多线程切换 native调c就怎么切换。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JVMJava虚拟机)模型是指Java程序在运行时的执行环境,包括JVM的组成部分和它们的工作原理。JVM内存模型是指Java虚拟机管理程序运行时内存的方式,包括内存划分、内存分配和对象回收等机制。 JVM模型的组成部分包括类加载器、解释器、即时编译器、垃圾收集器等。类加载器负责将Java类加载到JVM中,并将其转换为可执行代码;解释器负责解释字节码并执行相应的指令;即时编译器则将频繁执行的代码编译成本地机器码,以提高程序的执行效率;垃圾收集器则负责回收程序运行时不再使用的内存。 JVM内存模型规定了Java程序运行时内存的分配和管理方式。JVM内存模型将内存划分为不同的区域,包括方法区、堆、虚拟机栈、本地方法栈和程序计数器。其中,堆是Java程序运行时内存中最大的区域,用于存储对象实例。虚拟机栈和本地方法栈则用于存储程序执行时的局部变量和方法调用信息。方法区用于存储已加载的类信息、常量池、静态变量等数据。程序计数器则用于记录当前线程所执行的字节码指令位置。 JVM内存模型还包括垃圾回收机制,用于自动回收程序运行时不再使用的内存。垃圾回收机制采用标记-清除、复制、标记-整理等不同的算法来回收内存。 总之,JVM模型和JVM内存模型Java程序运行时的重要组成部分,了解和掌握它们的工作原理对于编写高效、稳定的Java程序至关重要。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值