Oracle 与 Google:第二回合

作者: James Darvell

Google 和 Oracle 之间的冲突持续在法庭上激烈进行。Oracle 寻求 88 亿美元的赔偿,Google 面临巨额损失,但此案对包括 FOSS 社区在内的全球软件开发人员都具有深远的影响。

在 2016 年 5 月 11 日星期三,Sun Microsystem 的前 CEO(Jonathan Schwartz)被传唤出庭。他的证词在 Oracle 的案件中造成了巨大的漏洞。

此案围绕 Google 在其流行的 Android 平台上使用 Java API 展开。如果 Oracle 胜诉,可能意味着 Android 的终结。

Android 本身是一个至关重要的开源项目。它也是世界上使用最广泛的平台之一。数百家硬件制造商依靠它来降低成本。它使他们能够将智能手机和平板电脑推向市场,刺激多样性并降低价格。尽管地平线上出现了其他的开源手持设备操作系统,但没有一个像 Android 那样成熟,Android 得到了大量应用程序开发人员的良好支持。

即使对 Android 的威胁本身已经足够严重,但此案的后果可能更糟。此案的关键点在于 API 是否构成受版权保护的作品或“操作方法”。

API(应用程序编程接口)描述了一段代码如何与另一段代码交互。API 用于构建相互通信的应用程序。它们可用于提供或请求服务和数据。

当 API 公开后,理论上可以创建一个新的代码体,提供相同的 API。此代码可以代替原始代码使用。换句话说,新应用程序或库的内部细节将有所不同,但从外部来看,它看起来是相同的。设计为与原始实体一起工作的应用程序将能够在新实体上工作。

如果 API 受版权保护法律的约束,那么在未经许可的情况下,生产与专有代码库具有相同 API 的软件将变为非法。这将对 GNU/Linux 和 FreeBSD 构成重大威胁。

这些操作系统实现了许多 UNIX API。事实上,它们最初是作为类 UNIX 系统的免费实现而开始的,其基础假设是版权法保护的是实现,而不是接口。

Oracle 与 Google 审判的核心 API 是 Java API,它由 Sun Microsystems 开发。Oracle 收购了 Sun,以及它的所有产品,包括 Java。现在它想要分一杯 Android 的羹。

Android 应用程序通常用 Java 编写并编译成 Java 可执行字节码文件,但 Android 不使用 Oracle 创建的标准 Java 运行时环境。相反,虚拟机和运行时库是由 Google 的工程师从头开始构建的。这些运行时针对手持设备的特殊要求进行了优化,包括低电池功耗和额外的安全问题。

它们复制了大部分原始 Java API,使 Java 开发人员更容易切换到 Android 开发。对于 Java 开发人员来说,Android 环境只是另一个框架(尽管是一个复杂而丰富的框架)。

Oracle 和 Sun 都没有授权使用 Java API。Google 坚持认为它不需要获得许可——API 不受版权保护,它们是自由和开放的作品。而且,这是大多数科技行业都会同意的立场。

在第一次审判中,法院同意 Google 的观点。陪审团裁定 Google 没有侵犯版权,此外,法官裁定 API 不受版权保护,因为它们是“系统或操作方法”。

正如您可以想象的那样,Oracle 不准备接受失败。这里涉及大量的金钱和自尊。因此,Oracle 向联邦巡回上诉法院提出上诉。上诉获得支持,案件被发回地方法院。

现在审判的关键在于“合理使用”的概念。换句话说,即使 API 是受版权保护的作品,人们可以在未经许可的情况下使用它吗?

Oracle 的立场一直是 Google 未经授权使用 API——它不被认为是开放的,并且第三方实现从未受到欢迎。Jonathan Schwartz 的证词已经彻底推翻了这一立场。

在回答 Google 的律师(Robert Van Nest)时,他表示 Google 并不是唯一一个实现未经授权的 Java API 实现的公司。更重要的是,他说 Sun 意识到了这一点,甚至对此表示欢迎。他的理由是,任何增加 Java 普及度的东西都会为 Sun 创造更多业务,Sun 提供额外的服务和软件。

这也不是他自己的想法。这是该公司在他受雇之前就已经实施的策略。更重要的是,他毫不掩饰自己对 Android 的支持,并在他的博客中发布了这一点。而且,在他写这篇文章时,它也反映了公司的观点。

从他的证词中可以清楚地看出,Sun 认可 Google 使用 API。事实上,Sun 鼓励这样做。这彻底推翻了 Oracle 声称 Google 从一开始就未经许可运营的说法。

Oracle 的律师随后提出了一系列问题,旨在将 Schwartz 描绘成一个软弱无能的 CEO(好像这会改变 Sun 批准 Google 行动的事实)。在某个时刻,他问 Schwartz 为什么 Oracle 在收购后没有给他提供高级职位。是因为客户在他辞职前大量离开 Sun 吗?

Schwartz 的回答意味深长。他说客户离开是因为他们害怕 Oracle 会如何对待 Sun 及其产品。

加载 Disqus 评论