Java程序运行时,操作系统内存与JVM内存的各自作用???

来源:百度知道 编辑:UC知道 时间:2024/06/27 14:17:59
通过QQ群友讲解,我有如下理解,我不知道对不对,还请 Java 高手指教一下,小弟万分感谢!!
-------------------------------------------------------------------------------------------------------------------------
我的理解是这样的:

虽然 JVM 是 Java 虚拟的计算机,同样有堆内存和栈内存。但 Java 程序运行时,供成员变量存储的堆内存,以及供局部变量存储的栈内存,都是由操作系统(如 Windows, Linux等)提供。而 JVM 的堆内存和栈内存,其作用是调用操作系统的内存或文件后进行模拟用的。

-------------------------------------------------------------------------------------------------------------------------
请知道的朋友多多指教!!
因为我是自学的,没有老师讲解,所以碰到问题就只能在网上寻求帮助了。

当然。

把JVM看成是个中间层就可以,不止是内存分配,还有线程、网络连接等等,最终在底层都要靠操作系统来搞。

Java语言的设计思想,本来就是对C语言这种可以直接进行操作系统调用的语言的一种简化。引入了一个隔离层,让jvm来当个中介,以简化应用开发。让程序员集中精力于实现业务逻辑。

自学,偶像...(看来不回答不行了 ....)
其实内存都是操作系统分配的, 你可以把jvm想像成一个中间层运行环境(java程序运行的支持,就是一种支持..)就得了就像那种.net framwork 那样的东东. 不用太在意....

程序
|
jvm
|
操作系统

我楼上的都是正解:

引用楼上的话

当然。
把JVM看成是个中间层就可以,不止是内存分配,还有线程、网络连接等等,最终在底层都要靠操作系统来搞。

Java语言的设计思想,本来就是对C语言这种可以直接进行操作系统调用的语言的一种简化。引入了一个隔离层,让jvm来当个中介,以简化应用开发。让程序员集中精力于实现业务逻辑。
(修补下 准确的说是C++,不是C.....让jvm当中介
以实现跨平台.以...)

恩,楼上说的对,jvm就是连接java程序跟操作系统的中间层,程序用到的内存都是从这里分配得到的,而jvm的内存是从系统内存得到的。

恩,楼上说的对,jvm就是连接java程序跟操作系统的中间层,程序用到的内存都是从这里分配得到的,而jvm的内存是从系统内存得到的。