佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 2822|回复: 37

jave虚拟机是什么?

  [复制链接]
发表于 9-9-2011 12:06 AM | 显示全部楼层 |阅读模式
希望版主手下留情,别删除,让大家讨论虚拟机和各种指令集,这里比较多人来看。

其实我也看了很多文章,不知道jave虚拟机到底是怎样的东西,是个软件?还是什么东东啊?跟普通我们看到的vmware有什么分别?
回复

使用道具 举报


ADVERTISEMENT

发表于 9-9-2011 12:27 AM | 显示全部楼层
我想到了因该是最简单的解释
java runtime environment 是JVM的一种
回复

使用道具 举报

发表于 9-9-2011 01:46 AM | 显示全部楼层
本帖最后由 Essential 于 9-9-2011 01:58 AM 编辑

Java Virtual Machine简单来说就是内里包含了各篇程包括微电脑,执行程式或者游戏加以打包而成一个篇写好并且打包好的微型虚拟机,就好像一个Emulator + Program合成一个压缩包装,一般叫Java包,只要安装运行执行工具就能将其自动解压,读取并执行打包好的微型虚拟机,只要任何机器不管电话还是电脑有Java读取执行工具就能运行Java包,以前的时候微软平台下Windows 98/XP有自带这个工具叫Microsoft Java Machine运行执行工具能执行Java包,而第三方的就有Sun也就是现在的Oracle其Java Environment Runtime, 后来微软停止了更新开发,现在Windows平台下只剩下第三方的程式如Sun/Oracle的Java Environment Runtime能执行Java包,这个Java微型虚拟机包一般都是只供自动读取和执行,而且并不是我们所看到如VMWare, Virtual Machine等,两者是不相同的
回复

使用道具 举报

发表于 9-9-2011 10:57 AM | 显示全部楼层
简单来讲就是和 .NET Framework 同一类的东西,不是你所想用来虚拟PC的虚拟机。。。
回复

使用道具 举报

 楼主| 发表于 9-9-2011 01:40 PM | 显示全部楼层
回复 2# JunJun04035


java runtime environment我有安装,但是实际用途我还真的不知道

他说用来模拟某种环境的东西?

这个我只是知道开JAR罢了
回复

使用道具 举报

 楼主| 发表于 9-9-2011 01:43 PM | 显示全部楼层
回复 3# Essential


自动读取和执行?那么vmware是怎么样的呢?

那个微型虚拟机有什么用呢?可以虚拟什么?
回复

使用道具 举报

Follow Us
 楼主| 发表于 9-9-2011 01:45 PM | 显示全部楼层
回复 4# wing_s


    .NET Framework也是虚拟机?
回复

使用道具 举报

发表于 9-9-2011 02:17 PM | 显示全部楼层
据我理解,JVM的能在不同OS / 平台 (在OS之上) 运行同样.class和.jar文件(不需在不同OS个别编译),实现了write once, run anywhere。
回复

使用道具 举报


ADVERTISEMENT

发表于 9-9-2011 02:23 PM | 显示全部楼层
回复  JunJun04035

java runtime environment我有安装,但是实际用途我还真的不知道

他说用来模 ...
seong1 发表于 9-9-2011 13:40


用java 语言编写的软件 并不能原生的在window下运行
所以你需要一个虚拟器来酱不兼容的java运行在window

同样的 .NET framework也是做同样的东西:把本来不兼容在window的软件(因为编写语言的关系)通过虚拟器(software based)来让这些软件兼容
回复

使用道具 举报

发表于 9-9-2011 02:51 PM | 显示全部楼层
回复 7# seong1

我不知道我的只是足够来解释没有
不过我尽量

----- 华丽分割线 ------

先说明一下什么是虚拟机
根据维基
在计算机科学中,硬件虚拟化是一种对计算机或操作系统的虚拟。虚拟化对用户隐藏了真实的计算机硬件,表现出另一个抽象计算平台。

或者说 虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。

再来 为什么我们需要虚拟机
  • 便携性,也就是跨平台的能力
  • 伺服的利用效率(也就是P-2V,这个这里不谈)
  • 其他


回到JVM的课题上,先来了解java根据维基
Java是一種電腦程式設計語言,擁有跨平台、物件導向、泛型程式設計的特性。

看得懂这几个字就好『電腦程式設計語言』

因为java原生之C,C++可是拥有更简单的物件导向能力加上其他的特色(涉及更少的低级语言,提升了资源利用效率等)
而且,Java的运行有一个特色,也就是所谓的write once, run anywhere
有别于其他的语言运作方式,首先将是源代码(source file,.java文件)编译成字节码(bytecode,.jar文件),然后依赖各种不同平台上的虚拟机(也就是JVM,或者window平台上的JRE)来解释执行字节码。

而普通的软件则是直接被编译成该系统认识的机械语言,所以会有所谓的机械针对性


说到这里 我不知道看的人明白没有
回复

使用道具 举报

 楼主| 发表于 9-9-2011 02:59 PM | 显示全部楼层
回复 8# cyea


    完全明白,很感谢,就是说class文件和jar文件可以在不同的电脑,处理器和环境下运行,安装jave这个软件就好了对不对?
回复

使用道具 举报

 楼主| 发表于 9-9-2011 03:01 PM | 显示全部楼层
回复 9# JunJun04035


所以呢,我需要安装java runtime environment对吧?可以说是个翻译器?
回复

使用道具 举报

发表于 9-9-2011 03:03 PM | 显示全部楼层
回复  cyea


    完全明白,很感谢,就是说class文件和jar文件可以在不同的电脑,处理器和环境下运行, ...
seong1 发表于 9-9-2011 02:59 PM



   就像flash player一樣
回复

使用道具 举报

 楼主| 发表于 9-9-2011 03:09 PM | 显示全部楼层
回复 10# JunJun04035


明白啦,说道这样了,虚拟机我还知道一些,所以在不同的处理器上都可以用吧?就像实际那样,不是X86都可以运行?
回复

使用道具 举报

 楼主| 发表于 9-9-2011 03:10 PM | 显示全部楼层
回复 13# vxion


    flash player关JVM什么事呢?不是播放影片罢了吗?
回复

使用道具 举报

发表于 9-9-2011 03:15 PM | 显示全部楼层
回复  vxion


    flash player关JVM什么事呢?不是播放影片罢了吗?
seong1 发表于 9-9-2011 03:10 PM



   不關事
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 9-9-2011 03:22 PM | 显示全部楼层
回复 16# vxion


那么为什么13楼是什么意思哈?
回复

使用道具 举报

发表于 9-9-2011 03:25 PM | 显示全部楼层
回复  vxion


那么为什么13楼是什么意思哈?
seong1 发表于 9-9-2011 03:22 PM



   沒有jre運行不到java程式,沒有flash player看不到flash,
回复

使用道具 举报

 楼主| 发表于 9-9-2011 03:26 PM | 显示全部楼层
回复 18# vxion


原来里是这样
回复

使用道具 举报

发表于 9-9-2011 03:44 PM | 显示全部楼层
回复  cyea

    完全明白,很感谢,就是说class文件和jar文件可以在不同的电脑,处理器和环境下运行, ...
seong1 发表于 9-9-2011 02:59 PM

回复  JunJun04035

明白啦,说道这样了,虚拟机我还知道一些,所以在不同的处理器上都可以用吧?就像实际那样,不是X86都可以运行?
seong1 发表于 9-9-2011 03:09 PM


总的来说,许多软件为了能兼容各种不同的OS / OS的版本,都必须准备不同的installer
比如JRE的
http://www.oracle.com/technetwork/java/javase/downloads/java-se-jre-7-download-432155.html
- jre-7-windows-x64.exe (64bit)
- jre-7-windows-i586.exe (32bit / X86)
- Linux.....
- Solaris ....
- MacOs
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 20-1-2025 01:13 PM , Processed in 0.141894 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表