background image

了 PASCAL 虚拟机的概念;广泛用于 Unix 服务器的 Perl 脚本也是

产生与机器无关的中间代码用于执行。但针对 Internet 应用而设计的

JAVA 虚拟机的特别之处在于它能产生安全的不受病毒威胁的目标

代码。正是由于 Internet 对安全特性的特别要求才使得 JVM 能够迅

速被人们接受。当今主流的操作系统如 OS/2、MacOS、Windows95/NT

都已经或很快提供对 J-Code

 

的支持。

    作 为 一 种 虚 拟 的 CPU , JAVA 虚 拟 机 对 于 源 代 码

(SourceCode)来说是独立的。我们不仅可以用 JAVA 语言来生成 J-

Code,也可以用 Ada95 来生成。事实上,已经有了针对若干种源代

码的 J-Code 编译器,包括 Basic、Lisp 和 Forth.源代码一经转换成 J-

Code 以后,JAVA 虚拟机就能够执行而不区分它是由哪种源代码生

成的。这样做的结果就是 CPU

 

可移植性。

  将源程序编译为 J-Code 的好处在于可运行于各种机器上,而

缺点是它不如本机代码运行的速度快。 

  三、JAVA 作为一种虚拟的操作系统(OS)和图形用户界

面(GUI

 

):操作系统可移植性

  即使经过重新编译,大多数的用 C 和 C++编写的 Windows 程

序也不能在 Unix 或 Macintosh 系统上运行。这是为什么呢?因为程

序员在编写 Windows 程序时使用了大量的 WindowsAPI 和中断调用,

而 Windows 程序对系统功能的调用与 Unix 和 Macintosh 程序有很大

的差别,所以除非将全套 WindowsAPI 移植到其它操作系统上,否