网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>JAVA>>新手入门>>基础入门>查看文档  
  虚拟机概论(六)——java虚拟机模型     
  文章作者:未知  文章来源:水木森林  
  查看:58次  录入:管理员--2007-11-17  
 
java虚拟机模型



由于它的高度可移植性,java已经成为internet上的主要编程语言。



“模拟机”的概念是计算机工业界经常使用的对虚拟机的解释之一。这种虚拟机概念和ibm版的虚拟机非常不同。在ibm的概念中,系统内存和资源被分割,成为当前机器的精确拷贝。而对于模拟机,系统并不被分割,而是有一台新的“机器”或者虚拟机加载到当前系统中,在不改变当前系统的前提下,向用户提供不同的功能。这种类型的虚拟机被证明是非常强大的,它允许软件开发人员在一台完全不同的机器上仿效另一台机器。最近,这种观念创造了一种强大的计算机程序语言:java。



java程序设计语言依赖于被称做java虚拟机(java virtual machine,jvm)的模拟机。jvm使得程序员不是和系统打交道,而是和虚拟机打交道。因此程序员使用的函数是jvm内嵌的函数,而不是操作系统的函数。这非常先进,因为它提供了可移植性。如果相同的jvm安装在两个完全不同的机器上,那么同一个java程序应该在两台机器上都可以运行,因为java程序依赖于jvm,而不是运行它的系统。由于它的高度可移植性,java已经成为internet上的主要编程语言。许多web页面现在都和java程序结合在一起。这些java程序可以完成一些在浏览器中显示的任务。



同时,jvm也非常小。或者说,它不站用大量的内存。这意味着jvm可以被应用于许多不同的机器。例如,电视机,蜂窝移动电话,以及计算机,都可以。因此,完全有可能向我们今天正在使用的设备中添加像游戏这样的复杂功能。



它是如何工作的?



你现在所疑惑的可能是一个java程序究竟是如何工作的。如何使用jvm?好的,jvm是我们对抽象计算机的称呼。或者说,jvm是在“真正的”硬件平台和操作系统上用软件来实现的。java程序是为jvm编译,而不是系统。这就意味着程序员写的java程序由java编译器翻译成jvm执行的语言/代码。这些代码被称做字节代码(byte code)。字节代码可以被认为是jvm的机器语言。jvm把字节代码流解释成指令序列。然后这些指令被执行,生成期望的输出。图1.1展示了从java程序到最终执行的路线。









如图1.1所示,一旦字节代码被jvm解释,jvm指令就会被映射成操作系统指令或者硬件指令。这就意味着jvm实际上是使用操作系统和机器指令来实现它所获取的指令。因此,jvm的指令在每一个安装jvm的操作系统或机器上都必须有一个可能的映射才能工作。这就是为什么java语言并没有达到100%可移植的原因之一。可能有的jvm指令在一种操作系统上可以实现,而在另外一种操作系统上不能实现。



小结



java虚拟机的主要目的就是去解决计算机程序的可移植问题。问题是jvm完全解决这个问题了吗?答案是没有……它没有完全解决这个问题。但是,它提供了一种对大部分都有效的解决方案(尽管不是100%有效)。java已经实现相当高的可移植性。java的力量使人们可以开发许多跨平台的应用程序。java已经证明是有用的,强大的虚拟机实现。
 
 
上一篇: 学习java的第一方案 (转贴)    下一篇: 选择合适的java脚本语言
  相关文档
java socket编程(二)java面向连接的类 11-17
netbeans 模块开发简介 11-17
java技巧:java向web站点发送post请求 11-16
写了一个hta来转换资源文件格式 11-17
学习更多 11-17
java继承时构造函数的调用 11-20
websphere enterprise scheduler 规划管理(1) 11-17
scjp考生的顾虑! 11-17
数据库相关:jdbc直连sql server 2005 02-26
java套接字实现网络编程之基础篇 11-17
客户端脚本,值得收藏.... 11-17
josephus算法的java语言实现 11-17
使用collections 11-17
1100行代码设计一个线程池 11-17
三种主要ejb container应用服务器介绍 11-16
java批注的发明起因及代码应用实例 11-17
scjp考题中的陷阱 11-17
什么是 enterprise javabeans 组件(3) 11-17
写给程序员:从c++转到java需注意的地方 04-08
spring vs. ejb 3.0 11-17
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
技术电话:13616026886
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息