作者:张文峰 本文选自:开放系统世界 2002年04月28日
开源的Linux
Linux作为免费使用和自由传播的类UNIX操作系统,以速度快、运行稳定、对硬件的配置要求低并兼具了其他操作系统的优点而赢得了广泛的赞誉,关键之处更在于其开放源码和免费使用的诱惑,使得近几年内Linux得到了迅猛地发展。
Linux的版权所有者是芬兰籍的Linus Torvalds先生和其他开发人员,它遵循GPL声明(GNU General Public License--GNU通用公共版权协议),即可以免费得到它的软件和源代码,并对它进行自由地修改。Linux的开源特性脱离了UNIX的影响,尽管UNIX具有庞大的支持基础和发行系统,使得它(指UNIX)成为世界范围内最有影响和最为广泛使用的操作系统之一,但是由于商业版UNIX非常昂贵,而且源代码是有专利的,所以很难在计算机爱好者中广泛使用。于是,出现这样一群人,他们是一支由编程高手、业余计算机玩家、黑客们组成的奇怪队伍,完全独立地开发出一个在功能上毫不逊色于商业UNIX操作系统的全新免费UNIX操作系统--Linux,开源的Linux!
最初的Linux系统很小,功能也不多,但是,随着Internet的发展,Linux系统被来自世界各地的数以千计的程序高手不断扩充和完善,今天,Linux在很多方面已经领先了商业性的UNIX系统。全世界许多热心的使用者为Linux开发或者移植了许多应用程序,包括X-Windows、Emacs、TCP/IP网络(包括 SLIP/PPP/ISDN)等等。现在Linux(包括内核和大量的应用程序)光是执行程序已经达到200M的规模,完全安装以后的规模将更大(大约500M左右),这也正是开源所带来的优势。
越来越多的商业软件公司宣布支持Linux,如Corel和Borland公司。在国外的大学中很多教授用Linux来讲授操作系统原理和设计。当然,对于大多数用户来说最重要的一点是,现在我们可以在自己家中的计算机上进行UNIX编程,享受阅读操作系统的全部源代码的乐趣!因此,Linux吸引着越来越多的使用者来使用它,测试修改软件中的错误。在短短的几年时间里Linux以超常的速度发展,已经从一个丑小鸭变成一个拥有广大用户群的真正优秀的、值得信赖的操作系统。根据不精确的统计,全世界使用Linux操作系统的人已经有数百万之多(这一数字还在以惊人的速度增加着),而且绝大多数是在网络上使用的。而在中国,随着Internet大潮的卷入,一批主要以高校的学生和ISP的技术人员组成的Linux爱好者队伍也已经蓬勃地成长起来。可以说在中国,随着网络的不断普及,开源而性能优异的Linux操作系统必将发挥出越来越大的作用。
与此同时,大量公司介入Linux的业务,将Linux操作系统及一些重要的应用程序打包,并提供较方便的安装界面。这些公司所提供的产品一般称为Linux的发布版本。目前比较著名的Linux发布版本有以下几种: RedHat-最著名的Linux服务提供商;SlackWare-历史比较悠久的发行版本;SUSE-在欧洲知名度较大; TurboLinux-在亚洲用户较多,该公司汉化做得很出色;Debain-完全由Linux社区的计算机高手维护的发布版本;XteamLinux-北京冲浪平台公司推出中国第一套汉化发布版本;BluePoint-内核汉化技术比较引人注目;红旗Linux-中科院软件所和北大方正推出的发布版本。这些都标志着Linux以前所未有的姿态迎接着传统操作系统软件的挑战。
但是,版本的多样化也同时带来了众多问题,人们认识到,尽管Linux的发展得以顺利的进行,然而,与UNIX遇到的同样问题不可避免地显现出来,Linux的多样性提高了相互的不兼容性,这极大影响了Linux应用软件的开发。
目前世界上存在188种Linux,为了Linux不致走上UNIX的发展道路,为了Linux能够更加健康快速的发展,制定一个统一的标准是十分必要的,这必须充分重视和借鉴UNIX的教训。
UNIX的歧途
UNIX最初也是作为小型机和大型机上的多任务系统而开发的,并很快地发展成为广泛使用的操作系统。但是,正是由于它含糊不清的接口和缺少标准化等缺点,严重阻碍了发展的进程。综观UNIX的发展历程,可以分为三个阶段:
第一阶段为UNIX的初始发展阶段,从1969年AT&T贝尔实验室创造了UNIX操作系统,到刚开始只是在实验室内部使用并完善它,这个阶段UNIX从版本1发展到了版本6。同时UNIX也以分发许可证的方法,允许大学和科研机构获得UNIX的源代码进行研究发展。这个阶段最重要的事件是UNIX的作者使用C语言对UNIX的源代码重新改写,使UNIX非常具有可移植性。
第二阶段为80年代,这是UNIX的丰富发展时期,在UNIX发展到了版本6之后,一方面AT&T继续发展内部使用的UNIX版本7,同时也发展了一个对外发行的版本,但改用System加罗马字母作版本号来称呼它。System III和System V都是相当重要的UNIX版本。此外,其他厂商,以及科研机构都纷纷改进UNIX,其中以加州大学伯克利分校的BSD版本最为著名,从4.2BSD中也派生出了多种商业UNIX版本。在这个时期中,Internet开始进行研究,而BSD UNIX最先实现了TCP/IP,使Internet和UNIX紧密结合在一起。
第三阶段是UNIX的完善阶段,从90年代开始到现在。当AT&T推出System V Release 4(第五版本的第四次正式发布产品)之后,它和伯克利的4.3BSD已经形成了当前UNIX的两大流派。此时,AT&T认识到了UNIX价值,因此他起诉包括伯克利在内的很多厂商,伯克利不得不推出不包含任何AT&T源代码的4.4BSD Lite,这次司法起诉也使很多UNIX厂商从BSD转向了System V流派。
至此,UNIX形成了众多具有代表性的版本,包括分属两个流派的SunOS与Solaris,SGI公司的IRIX 6.x,SCO公司的OpenServer与UNIXware等。其中,Solaris主要针对它的处理器来开发,以及用于Intel平台上的系统Solaris X86。IRIX 6.x是SGI公司的UNIX,这也是一种基于UNIX System V的产品。SGI的UNIX图形工作站是图形图象处理领域内的顶级产品,但SGI在图形图象领域的领先地位掩盖了他作为一家UNIX厂商在操作系统领域内的努力。SCO UNIX是在国内比较有名气的操作系统,因为他使用Intel的平台,并且较早进入中国市场。它的历史可以追溯到MicroSoft开发的Xienx,Xienx是运行在Intel平台上的一种基于UNIX V 6的系统,后来Xienx开发部门独立出来成立了SCO公司,并基于AT&T System VR3.2开发了SCO UNIX,其最新的版本为增强了图形接口的SCO OpenServer 5.0.4。
众所周知,由于UNIX不是一个厂家的单独产品,在长期的发展过程中形成的多种不同的版本,虽然基本操作命令相似,但其中的较大的差异对于不太了解UNIX发展过程的使用者和网络管理员,造成了大量的困惑,从而造成使用或管理方面的众多问题,这使得UNIX的发展脚步越来越沉重。同时,厂商之间的矛盾越来越明显,缺乏统一的标准使得彼此的产品距离越来越大,几乎演变为一场无法收拾的内战。由此可见,Linux的发展道路与UNIX有着太多的相似,不要重蹈UNIX的覆辙是所有Linux业者和支持者的迫切呼声,人们呼唤着一个统一的标准,以使Linux得以更加健康的发展。
姗姗来迟的LSB
的确,UNIX的教训是沉重而深刻的。但是,这也为Linux的发展不至误入歧途带来了启迪。缺少统一的标准所带来的最严峻的问题就是资源的浪费和重复劳动以及由此引发的停滞不前。因为构建一个运行在多种Linux上的应用程序至少需要三种方法,第一种是针对每种Linux分别编写软件,但它需要在各自的Linux上分别测试。第二种是只为那些用户最多的版本编写,但无论选择了哪种,都会失去部分的潜在客户。第三种是忽略各个版本之间的区别,而推出可以在所有系统上使用的产品,那么它将需要所有必需的库文件和工具,这项工作简直有些天方夜谭。因此,运行在Linux上的商业软件之所以少的首要原因就是缺少统一的移植标准,它阻碍了开发源码软件的发展进程。
统一不同版本的Linux,是进一步在企业用户中普及Linux的必经之路。企业用户不愿看到技术上的不兼容和标准之争,在这些问题解决之前,大规模地采用这种新的操作系统不太现实。TurboLinux公司首席执行官保罗?托马斯在出席一次源代码开放软件相关大会时说:""我们将拥有一种独立的、更具普遍意义的Linux。""他表示,""世界不需要188不同版本的Linux,谁也不可能仅仅通过销售操作系统来赚取利润。(Linux的)价值主要体现在相关服务和应用程序上。""
到目前为止,红帽子、TurboLinux、SuSE和Caldera系统等四种主要的Linux都拥有许多相同的功能。它们采用同样的内核、同样的显示软件,以及由红帽子公司开发的同样的软件升级功能。但是,它们也有许多不尽相同的功能,如用户界面和文件所处位置等。和TurboLinux公司一样,其它主要Linux经销商也将它们的未来放在了帮助企业客户减轻电脑管理负担之上。红帽子公司最近推出了一种订阅服务,可使用户通过付费获得软件升级服务。TurboLinux公司、SuSE公司和Caldera系统公司也都计划推出类似的服务。这就需要Linux产品之间具有很好的兼容性。
在由Linux业者组成的""自由标准集团""举行的论坛上,Linux标准基础(Linux Standard Base, LSB)被发表,为首次打破不同版本Linux产品的语言藩篱进行努力。尽管LSB姗姗来迟,但是它却标志着制定统一的标准被提上日程。
保罗?托马斯表示,""Linux标准基础""将为统一不同版本的Linux提供一条行之有效的途径。一向支持""Linux标准基础""的Caldera系统公司也表示,它将支持Linux的标准化。Caldera系统公司的首席技术总监德鲁?斯宾塞说:""来自所有Linux经销商的Linux产品的一致性非常重要。我们认为这是绝对必要的。""否则的话,""Linux将分裂成为彼此之间难以兼容的不同版本。
Linux一直在试图消除UNIX的影响。近来,Linux进行标准化的努力取得了很大的进展,向目标又接近了几步。美国Linux标准库(LSB)以及其他一些项目就是要避免将Linux像UNIX系统一样分裂为几个不相兼容的版本。否则,这样分裂的结果是微软将可以用较为完整的Windows产品胜出了。一些Linux公司,如Caldera Systems和TurboLinux等,认为标准化以后可以使Linux公司更容易在基础技术方面进行合作,而在高级性能上互相竞争。
近日美国自由标准集团(Free Standards Group)发布了""Linux开放平台说明书""的1.1版本,该说明书的目的是使多种Linux版本的程序编写更方便,例如Red Hat、Caldera及其他版本的Linux等。另外还发布了""文件系统层标准""公众评论的2.2版本,该标准用以统一Linux和UNIX中存放关键文件的位置。
""自由标准集团""(Free Standards Group)发表的LSB 1.1版和Linux国际化起始(Linux International Initiative)标准第一版,可让像Oracle等软件厂商更容易将其程序转到Linux平台,而软件公司不但可从不同厂商的Linux版本知道未来Linux的功能,甚至可以预知未来版本的功能。
包括HP、IBM、Dell、康柏、SuSE、Red Hat、Caldera、Turbo Linux和Ximian都在Linux World Conference and Expo上宣布此项标准。这些厂商都表示将尽力使其Linux产品符合LSB。因此,我们相信,LSB为Linux的未来所带来的希望,不仅会促使Linux以顽强的努力摆脱UNIX的影响,更会以一个""统一的基础,高端的竞争""模式突破传统软件行业的束缚,为自由软件的事业开辟更为广阔的道路。