JVM是指java虚拟机,它为运行java程序提供的环境.
jdk只是提供了运行java程序需要的一些类库,这些类库被定义为标准库,你可以通过运用这些类库,来编写你的java程序,将程序编写好后,通过jdk提供的javac xx.java命令先将java源文件编译成.class的java字节码文件,然后通过java xx命令在JVM中运行.一般jdk中都带了相应版本的JVM,不过不同版本的jdk带的jvm可能有所不同.
要发布你的java程序,必须带上相应的jdk,其实是提供一个运行环境和标准库.操作系统一般不带jvm,IE中携带的jvm是只能在运行applet的时候进行调用,在运行其他java程序的时候,并不会调用.