Linux 发行版就标准达成一致

作者:Scott McNeil

早在 1997 年,一群 Linux 软件开发者就在思考可以做些什么来规避不同 Linux 发行版之间细微但令人困扰的差异。不仅如此,他们还在应对单个 Linux 发行版不同版本之间的差异。

对于该组织的自由软件开发者来说,问题是找到时间来构建新的功能和增强,而不是花费数小时来验证他们的软件是否在所有 Linux 发行版上都能工作。

对于非自由软件开发者来说,问题是相同的,但他们还需要安抚付费客户并照顾员工。必须要做些什么。

幸运的是,几乎所有人都同意,从上游作者到 Linux 发行版再到用户。此后不久,Linux 标准库(LSB)项目成立,Alan Cox 设计了网站,Bruce Perens 担任领导角色,Jon “maddog” Hall 提供指导。在 Linus Torvalds 的支持下,一切似乎都很好,但这个先驱者团队并没有意识到他们承担的项目有多么庞大。他们不仅需要创建一个能够满足开发者、发行版、企业和用户需求的标准,而且他们必须使其真正发挥作用,并且他们只有一次做对的机会。

快进到 2000 年。LSB 处于 0.02 版本,并且有一群开发者正在接触他们,希望为创建 Linux 国际化标准提供建议。经过几次讨论,很明显需要一种新的格式,这种格式将为两项工作带来更多资源,同时允许它们保持独立并由社区主导。这就是自由标准组织 (Free Standards Group) 的起源。

自由标准组织是一家加利福尼亚州的非营利性公司,致力于通过标准的制定、应用和推广来加速开源技术的采用和普及。

自由标准组织在 2000 年底成立后不久,就成为了自由和开源开发者以及 IT 行业的催化剂。围绕 LSB 和 Openi18n(开放国际化倡议)的开发活动真正开始蓬勃发展。到 2001 年底,这两个组织都完成了其标准的 1.0 版本,并确信它们将获得广泛采用。这种信心主要是因为目标采用者是构建标准的同一批人和公司。像 Ted Ts'o、Stuart Anderson 和 Dan Quinlan 这样的开发者以及像 Red Hat、SuSE、HP 和 IBM 这样的公司都将资源投入到这项工作中。

这些工作不仅仅是为了记录规范;相反,它们是在创建 Linux 系统的正式全面的行为描述,以及在其基础上构建和证明它的方法。例如,LSB 包括操作系统、应用程序和构建环境的测试套件。它还包括构建环境、示例实现、应用程序电池和完整文档。以下是各部分的细分

  • 书面规范:定义了符合 LSB 的操作系统的行为。它没有说明应该使用哪个版本的内核、库或其他核心元素,只说明每个部分将如何表现。这使得开发者只需关注操作系统和 API 的 API 即可。

  • 测试套件:包括操作系统、应用程序和构建环境的测试。

  • 构建环境:一个隔离的环境,开发者 chroot 进入以构建符合规范的应用程序。

  • 示例实现:一个隔离的环境,开发者 chroot 进入以测试运行符合规范的应用程序。

  • 应用程序电池:一组运行以压力测试符合规范的操作系统的开源应用程序的集合。

在完整 LSB 发布大约六个月后,LSB 认证启动了。认证为 Linux 发行版和基于 Linux 的应用程序的供应商提供了一种验证和展示其产品符合标准的方法。在启动 LSB 认证的六周内,Mandrake、Red Hat 和 SuSE 已经申请并获得了 LSB 认证。

今天,每个主要的 Linux 发行版供应商都已申请并获得了 LSB 认证。关于 Linux 发行版之间碎片化的争论现在可以结束了。应用程序开发者可以确信,当他们基于 LSB 构建时,他们的应用程序将在任何 LSB 认证的系统上未经修改地运行。用户将受益于发行版之间的兼容性和更大的应用程序库。

尽管自由标准组织及其 LSB 和 Openi18n 工作组在采用其标准方面取得了巨大成功,但他们并没有止步不前。我们正在向前迈进,扩展我们现有的标准,并承担新的任务,例如打印和桌面标准。

如果您对 Linux 的未来有任何兴趣,您可以加入我们。会员资格向个人、非营利组织(包括教育机构)、公司和政府机构开放。要了解更多信息,请访问 www.freestandards.org

Scott McNeil 是自由标准组织的创始人之一兼执行董事。

加载 Disqus 评论