防止分化 解读Linux最新标准LSB 3.0

导读:LSB是什么?
LSB是Linux Standard Base取首字母的缩写 。LSB的目标是制定标准提高Linux系统与其他相似系统的兼容性 。LSB标准定义了二进制环境,符合LSB的应yon程序在其中可以可以在其中运行 。
最近 Linux Standards Base(LSB)3.0规范已经发布 。新的LSB标准旨在防止Linux分化,已获得了主要Linux厂商的广泛支持 。LSB规范由Free Standards Group(自由标准组织)负责维护和开发,并计划通过一套基本API和库实现互操作性,这样ISV就可以开发和移植应用,以使应用能够在LSB认证的Linux版本上运行 。这套LSB标准目前支持7种架构,包括IA32、IA64、PPC32、PPC64、S390、S390X和X86_64 。LSB 3.0对2.0进行了很多提升 。Free Standards Group的执行理事Jim Zemlin说,最重要的是,LSB 3.0包括更新的、用于C的应用程序二进制接口(ABI),所有主要Linux版本都支持这一二进制接口 。Zemlin说:“对要支持多种版本Linux的ISV而言,这极大地降低了成本并缩短了开发时间 。
一、国际Linux的标准体系
1.POSIX标准
POSIX(Portable Operating System Interface for Computing Systems)是由IEEE 和ISO/IEC 开发的标准系统 。该标准是基于现有的Unix 实践和经验,描述了操作系统的调用服务接口,用于保证编制的应用程序可以在源代码一级上在多种操作系统上移植运行 。
1991-1993年Linux刚起步时,适逢POSIX 标准的制定正处在最后定稿的时候,POSIX标准为Linux提供了极为重要的信息,使得Linux能够与绝大多数Unix 系统兼容 。POSIX目前的最新标准是IEEE 1003.1-2001 。
在最初的Linux 内核代码中(0.01 版、0.11 版)就已经为Linux与POSIX标准的兼容做好了准备 。通过对0.01 版的内核/include/unistd.h 文件的分析就可见,Linux在发展初期就想实现与POSIX的兼容 。从Linux的发展进程也可以看出,Linux 的成长一直有POSIX 标准的辅佐,没有POSIX 的指导,就不会有Linux的今天 。
2.FSG(Free Standard Group)标准系列
Linux标准化规范和工作组——LSB(Linux Standard Base) 工作组是Free Standards Group的成员工作组 。LSB是Linux领域重要和有影响的标准化组织 。LSB工作组以达成“Standardizing The Penguin”为目标,制定最基本的标准,如公众命令集和文件传输的格式等,为应用之间的兼容奠定基础 。它致力于开发和推广一系列的标准,提高不同 Linux发行版本的兼容性,使得软件应用得以运行在各种符合LSB标准的系统中,同时也帮助协调软件开发商向Linux移植和开发产品 。目前国际上流行 的Linux版本基本都遵循LSB标准,该规范是Linux世界统一的重要力量,可以说是Linux的工业标准 。在LSB的发展历程中较为重要版本是 V1.3,目前最新版本是2004年9月份所推出的LSB V2.0,主要是在V1.3的基础上增加了对C的支持 。LSB V2.0也不能完全解决当前Linux应用中所面临的兼容性问题 。OpenI18N (Open Internationalization Initiative)致力于增强国际化背景下的软件应用的可移植性和互操作性,提供一个通用的开放源码环境,使得全球不同文化、语言的应用程序可以正确地运行和正确地表达 。OpenI18N也制定相关的标准并开发验证和测试工具包 。符合OpenI18N标准的前提条件是符合对应的LSB标准 。Linux国际化英文是从internationalization里,将i到n之间的18个字母略称为『i18n』,再加上Linux就变成Li18nux,以此作为推展国际标准化的国际名称 。在FSG中除了LSB和OpenI18n外,还有许多有影响的标准组,如LANANA (Linux Assigned Names and Numbers Authority)、OpenPrinting、Accessibility、DWARF、Open Cluster 。它们主要关注于特定的领域应用 。
3.OSDL(Open Source Development Lab)标准系列
CGL(Carrier Grade Linux)是由OSDL资助的项目,致力于制订一个符合电信运营商要求的Linux标准 。它针对网关, 信令服务器、管理服务器等电信应用提出了对Linux的增强,满足集成电信、数据和Internet的新一代通信基础设施的需要 。CGL承诺遵守LSB标准,保持Linux版本的一致性,并遵守开放源码的许可协议和开放源码的开发流程 。CGL支持相关软件包的测试和认证,是一个完整的体系 。

推荐阅读