Linux + Java 会得到什么

信息产业,战况频仍。
Linux v.s Windows 、 Java v.s .NET 、 OpenOffice.org v.s Microsoft Office System 、 PS2 v.s XBox 、 Palm v.s Windows CE 、 Symbian v.s Microsoft Smart Phone… 等等。孤军奋战总是势单力薄,团结力量大,于是我们开始看到在不同领域的反微软势力有了整合的迹象,其中最明显者是 Linux + Java 。

Linux 逐渐兴起,而 Java 本来就是软件技术的主流, Linux 负责下面的操作系统, Java 负责上面的应用,两者的结合是绝佳的互补。甚至有人将 Linux + Java 唤做 Lava (岩浆)。

对于一个新推出的操作系统来说,会遭遇到两大问题:第一个问题是驱动程序不足,第二个问题是应用程序不足,而 Java 的存在,可以解决第二个问题。只要该操作系统上具备 Java 虚拟机器,就可以执行所有的 Java 应用程序;只要 Java 的应用程序够多、够丰富,就可以解决新操作系统其应用程序不足的窘境。

我记得 BeOS 的 CEO 曾说过:新的操作系统如果能够利用 Java 的力量,将可以有崛起的机会(虽然在 2001 年时 BeOS 还没等到此机会就因资本耗尽而关门,后来技术被 Palm 买走)。但是我认为,倘若新的操作系统真的利用 Java 而站稳脚步了,恐怕又会想把 Java 一脚踢开。「狡兔死,走狗烹」,不正是同样的道理。新的操作系统一旦崛起,一定会希望应用程序只能在自己的操作系统上执行,而不能在其它操作系统上执行。

回溯到约六年前,当时 IBM 和 Sun 合作开发了一套新的操作系统,称为 JavaOS ,正是要结合操作系统与 Java 虚拟机器。只可惜,后来他们发现这样的设计并未取得太多速度上的优势(因为那一阵子 JIT 编译器的技术进展很快),而且也会造成驱动程序不足的困扰(这是新的操作系统一定要面对的问题),所以该计划在 1998 下半年时停摆。不久之后,另一个 Open Source 的类似计划 JOS 也停摆了。

现在 Sun 即将推出一个名为 Java Desktop 的产品,它正是整合了 Linux 和 Java 。 Java Desktop 不会有以前 JavaOS 的问题,因为现在 Linux 的驱动程序已经很普遍,连 Linux 原生的程序都很齐备。 Java Desktop 整合 Linux 和 Java ,并预先安装了许多软件(包括了 Java 的应用软件和 Linux 原生的应用软件),例如 StarSuite 。如同大家所预料的一样, Java Desktop 的外观与操作方式和 Windows 很类似。

许多 Linux 阵营的人都在质疑,在这个称为 Java Desktop 产品中, Java 占的比例太小, Linux 占的比例太大,似乎不太适合称为 Java Desktop ,而应该称为 Linux Desktop 。不只是 Linux 阵营有此疑义,连 Java 阵营(例如 www.JavaLobby.org )也充斥着这样的看法。我建议 Java Desktop 另取名字,以正视听。否则,刚刚买下 Ximian 的 Novell 万一以后打算推出 Linux + Mono ,是不是可以如法炮制,称为 .NET Desktop ,乖地隆咚!

Linux + Java 会不会成功?我认为,在服务器上的 Linux + Java 机会颇大(事实上,可以算是已经成功了),但是在 PC 上, Linux + Java 短期内是没有赢面的。而 Java Desktop 似乎是 PC 等级的软件,这使得我相当怀疑 Java Desktop 的前景。

就操作系统和虚拟机器的整合来说,恐怕 Linux + Java 的整合程度会比不上 Windows + .NET 。 Windows 已经渐渐地将许多核心技术改用 .NET 相关技术来取代,例如 Windows 核心的 COM/DCOM/COM+ ,在进入 .NET 时代之后都会有适当的替代技术出现。甚至下一个版本的 Windows (代号 Longhorn )可能就是一个完全整合进 .NET 的崭新操作系统。从 Java 和 .NET 在这几年的发展状况来说, Java 如果不能解决自身的许多问题,并加快步伐,恐怕龟兔赛跑的情节会再度上演。

Published At
Categories with 服务器类
Tagged with
comments powered by Disqus