jvm是否依赖操作系统?
是的。JVM最主要的作用是让java语言开发的代码与平台无关。平台之间的差异是确确实实存在的,上面运行的程序是无法绕过去他们。
JVM自身是使用C++语言开发完成。使用C++语言做过跨平台开发的朋友都知道,单就多线程来说,处理细节方面Windows和Linux就有一定的差异。更何况JVM涉及到更多细节。
JVM把底层复杂的处理细节,对上层客户透明化。自身在适配做了大量的工作,才让我们应用的像德芙。用个不太恰当的比喻,他就像蜡烛,燃烧了自己,照亮你的美。
linux内核,和jvm哪个技术难度高?
这两个不是一个层级的架构,Linux的内核要更底层,jvm需要底层操作系统支持,从系统架构上讲,位置在Linux上层,都是需要非常好的系统底层和体系架构知识才能驾驭的系统