- 什么是虚拟机?
它是模拟某种计算机的体系结构,执行特定指令集的软件。 例如:vmware
jvm是进程虚拟机,他不会模拟一个操作系统的运行。只是提供特定指令集。
在《java虚拟机规范》中定义了若干种程序运行期间会使用到的存储不同类型数据的区域。
- 运行时数据区的划分。
程序计数器 java堆 java虚拟机栈 本地方法栈 方法区
程序计数器:一块较小的内存空间,他的作用可以看作是当前线程所执行的字节码的行号指示器。
它是线程私有的,如果正在执行的一个java方法,那么计数器记录的是自己吗指令的地址,如果是native方法 那么计数器的值是空。
本地方法栈 :线程私有,后进先出,作用是支撑Native方法的调用,执行退出。可能出现 OutOfMemoryError 异常和 StackOverflowError 异常。
时间: 2024-12-06 01:39:37