【发布时间】:2016-12-01 21:20:54
【问题描述】:
我了解 JVM 如何从操作系统提供的可用本机堆中创建 java 堆。
对于像 JVM(java.exe) 这样的任何原生进程,操作系统分配地址空间,地址空间被划分为多个区域,如堆、堆栈、数据等。'
JVM 以某种相同的方式为正在运行的 java 程序(字节码)分配一些地址空间,其中包括 java 堆、堆栈等。
我知道java堆是本机堆的一部分(由操作系统提供给JVM(java.exe))
但我无法理解这个“stack”部分来自哪里。
它是本机堆的一部分吗? 它是本机堆栈的一部分吗,就像 java 堆是本机堆的一部分一样?
就像Java Heap vs Native Heap,我们不是有Java Stack vs Native Stack吗?
请帮助我。我真的很难理解 java 中的堆栈内存。
【问题讨论】:
-
this question 和 this one 的可能重复
标签: java c memory-management jvm operating-system