见证UNIX发展历史(ZZ)

来源:百度文库 编辑:神马文学网 时间:2024/04/29 00:39:20
UNIX 已有数十年的历史,在这期间,它的改变即使没有上亿次,也有数百万次了,有成千上
万的个人和公司实现了上千种不同的版本,有上百万系统管理员在从微型嵌入式系统到超级
计算机上都安装过它。无可争论,没有两个实际的UNIX操作系统是完全相同的。
UNIX”一词是属于Open Group的一个商标,该组织是一个要求符号得到正确归属的国际
协会。在这数十年当中,该标识已经被冲淡到没有具体含义。虽然如此,Open Group仍发布
了“The Single UNIX Specification”,这可以在http://www.UNIX-systems.org上看到。
“Unix”是双关语,表示名字Multics,它最初被写作“Unics”,表示UNiplexed Info
rmation and Computing System。“Unix”和“UNIX”在如今都被广泛使用。曾经有一段时
间,Dennis Ritchie试图宣布用小写版本,因为“UNIX”不是开头字母组成。
许多运行Linux等类似UNIX系统的人认为他们运行的是UNIX。正式UNIX系统和非正式UNI
X系统通常被认为属于一类----不论是书中、媒介、网上还是社会公认。
按照UNIX FAQ的定义,UNIX是“一个用C语言编写的操作系统,它有层次文件系统并集成
了文件和设备I/O,其系统调用接口包括fork ( )和pipe ( )等服务,用户界面包括cc、tro
ff、grep、awk等工具和一个被选择的shell”。可以再加一些,UNIX为多任务提供一致的方
式,并内置有创建、同步和终止进程的操作,它可在不同种类计算机间进行移植。
从总体来看,Unix的发展可以分为三个阶段:
第一阶段为Unix的初始发展阶段,从1969年KeThompson在AT&T贝尔实验室创造了Unix操作系统,刚开始运行在一台DEC PDP-7计算机上,只在实验室内部使用并完善它,这个阶段Unix从版本1发展到了版本6。值得注意,此时的Unix是用汇编语言写成的,以至在1970将Unix移植到PDP-11/20上的时候花费了大量工作。在这个阶段里最重要的事件可以算Unix的作者使用C语言对Unix的源代码重新改写,使Unix非常具有可移植性。
Unix是用c写成的,c本身又是为了写Unix而诞生的。大家还记得在不区分大小写的DOS用C开始写程序时候的不适么?年幼的天缘当时也很不明白为什么c需要区分大小写,后来接触多了,才知道c原本就是unix下的,而unix是区分大小写的。由于此时AT&T还没有把Unix作为它的正式商品,因此研究人员只是在实验室内部使用并完善它。
正是由于Unix是被作为研究项目,其他科研机构和大学的计算机研究人员也希望能得到这个系统,以便进行自己的研究。AT&T以分发许可证的方法,对Unix仅仅收取很少的费用,大学和研究机构就能获得Unix的源代码以进行研究。Unix的源代码被散发到各个大学,一方面使得科研人员能够根据需要改进系统,或者将其移植到其他的硬件环境中去,另一方面培养了懂得Unix使用和编程的大量的学生,这使得Unix的普及更为广泛。
第二阶段为80年代,这是Unix的丰富发展时期,在Unix发展到了版本6之后,一方面AT&T继续发展内部使用的Unix版本7 ,同时也发展了一个对外发行的版本,但改用System加罗马字母作版本号来称呼它。System III和System V都是相当重要的Unix版本。此外,其他厂商,以及科研机构都纷纷改进Unix,其中以加州大学伯克利分校的BSD版本最为著名,从4.2BSD中也派生出了多种商业Unix版本比如Solaris、HP-UX、IRIX 、AIX、SCO
Sun是最早的工作站厂商,但一直在Unix工作站领域不断发展。其操作系统 SunOS是基于4.2BSD开发的,直到SunOS 4。但是在此之后,Sun将操作系统的开发工作转向了System V,这个新版本为Solaris 2,或者称为SunOS 5,因此也可以将SunOS 4称为Solaris 1.0,但是SunOS 4与Solaris 2分属两个流派,其中的差别就比较大了。值得一提的是Sun的版本号比较有趣,从Solaris 2.6之后,Solaris 2.7的版本号直接变成了Solaris 7.0,可说是常见的商业炒作手法之一了。Sun的Solaris主要针对他的处理器Sparc来开发,但是他们也开发了用于Intel平台上的系统Solaris X86。与运行在工作站上的Solaris相比,Solaris X86性能较差。近期来由于Linux给于的压力,Sun加大了对x86的投入力度,目前Solaris for x86的10版本已可以在网络上找到。
IRIX是SGI公司的Unix,这也是一种基于Unix System V的产品。SGI的Unix图形工作站是图形图象处理领域内的顶级产品,这一方面是由于SGI的硬件性能相当优秀,另一方面在软件方面,SGI开发了工作站下的图形图象处理软件,成为这个领域的领先者。事实上天缘曾经有缘使用过SGI的机器,在一张静态图片上用鼠标点击,即时毫不停顿地产生多个相互交互作用的水波纹,波纹之清晰、交互之自然、速度之流畅,给我留下了相当深刻的印象。SGI在图形图象领域的领先地位掩盖了他作为一家Unix厂商在操作系统领域内的努力,事实上在他们还生产超级计算机,在多处理器和并行计算等大负荷计算方面都有独到的研究。如果大家有够细心,可以看到在关于linux发展的文章中有提到SGI组建了一个基于Linux使用256个CPU的超级服务器。IRIX在SGI出色硬件的合作下,性能相当卓越。
SCO Unix是在国内比较有名气的操作系统,因为他是当时能运行在Intel的平台之一,并且较早进入中国市场。它的历史可以追溯到MicroSoft开发的Xienx,Xienx是运行在Intel平台上的一种基于Unix V 6的系统,后来Xienx开发部门独立出来成立了SCO公司,并基于AT&T System VR3.2开发了SCO Unix,其最新的版本为增强了图形接口的SCO OpenServer 5.0.4。此时AT&T已经将它们负责Unix的部门USL(Unix系统实验室),卖给了Novell公司,它们的Unix被更名为UnixWare ,但是Novell正逢经营问题,不得不将UnixWare再次卖给SCO。SCO之所以能占有市场,并不是其产品特别出色,而是因为在小型机特别昂贵的年代,对一些追求稳定的行业来说,使用SCO能在x86上运行,可以节约大量成本。因此早期的银行、金融行业的终端大多是使用SCO的。而最近SCO的名声越来越坏,只因被更加优秀且同样能运行于x86的Linux抢走大量份额,大家知道知道吃不饱的狗是会乱咬人的。不过可惜最后授权没强行推销出去几份,反而得了个$CO之名。而Novell在购买UnixWare之后的一个重要举动是将Unix商标赠送给一个非盈利的Unix组织X/Open,结束了USL与BSD以及其他厂商的纷争。
其他的如IBM的UNIX,是根据SVR2(最近已经出到SVR3.2)以及一部分BSD延伸而来。HP-UX则是HP公司从S III(SVRx)发展面来,现在是由SVR2(4.2BSD)发展而来。
在这个时期中,Internet开始进行研究,而BSD Unix最先实现了TCP/IP,使Internet和Unix紧密结合在一起。伯克利大学为Internet打下了基石,同样的还有这所大学所出的DB和DNS 解析服务器,再怎么盛赞这所大学为Internet的贡献也不为过。
第三阶段是Unix的完善阶段,从90年代开始到现在。当AT&T推出System V Release 4(第五版本的第四次正式发布产品)之后,它和伯克利的4.3BSD已经形成了当前Unix的两大流派。此时,AT&T认识到了Unix价值,因此他起诉包括伯克利在内的很多厂商,伯克利不得不推出不包含任何AT&T源代码的4.4BSD Lite,这次司法起诉也使很多Unix厂商从BSD转向了System V流派。而FreeBSD的发展速度之所以会落于后起之秀Linux上,这也是一个重要原因。这时候Linux出现了,它是一个完全免费的与Unix兼容的操作系统,可运行在多种平台上。
虽然Unix已经非常开放,但在80年代其内核代码也不是随意就可以得到的。最容易得到的代码是Minix,用于教学目的而编写的一个系统,这远不是一个成熟的系统。于是芬兰的Linus决定自己编写一个独立的操作系统,在Internet上发布了一个通告。这个成为Linux的系统在Internet上的众多爱好者的帮助下迅速开发出来,并取得了巨大的成功。Linux和其他Unix的源码完全无关,严格来讲只能算仿制品。但Linux的开发者来自整个Internet,具有各种Unix系统的背景,因此Linux也集中了各种Unix的优点,从性能上与商业产品毫不逊色。所以从广义上来说,天缘把Linux划分到了Unix派系。
最后附上一张比较详细的Unix 发展表:
重要的Unix版本
SunOS与Solaris
Sun是最早的工作站厂商,但一直在Unix工作站领域不断发展。当前,Sun的工作站产品和Inte rnet服务器产品在ChinaNet中应用非常广泛。其操作系统 SunOS是基于4.2BSD开发的,直到SunOS 4。但是在此之后,Sun将操作系统的开发工作转向了System V,这个新版本为Solaris 2,或者称为SunOS 5,因此也可以将SunOS 4称为Solaris 1.0,但是SunOS 4与Solaris 2分属两个流派,其中的差别就比较大了。
Sun的Solaris主要针对他的处理器Sparc来开发,但是他们也开发了用于Intel平台上的系统Solaris X86。与运行在工作站上的Solaris相比,Solaris X86性能较差。
最新的Solaris版本为2.7,或者可以称为Solaris 7.0,这种使用操作系统版本号的把戏只不过是一种商业炒作方式。但是Sun公司在Unix领域内的努力,已经成为最具活力的U nix商业厂家,Solaris也是最有前途的商业Unix版本。
IRIX 6.x
IRIX 6.x是SGI公司的Unix,这也是一种基于Unix System V的产品。SGI的Unix图形工作站是图形图象处理领域内的顶级产品,这一方面是由于SGI的硬件性能相当优秀,另一方面在软件方面,SGI开发了工作站下的图形图象处理软件,成为这个领域的领先者。而SGI在图形图象领域的领先地位掩盖了他作为一家Unix厂商在操作系统领域内的努力,事实上在他们还生产超级计算机,在多处理器和并行计算等大负荷计算方面都有独到的研究。
在Unix领域,IRIX不是最具备活力的版本,但更关心稳定性。在他们出色硬件的合作下,SGI的服务器性能在Unix服务器中也是一流产品。
Linux与FreeBSD
虽然Unix已经非常开放,但在80年代其内核代码也不是随意就可以得到的。最容易得到的代码是Minix,用于教学目的而编写的一个系统,这远不是一个成熟的系统。芬兰的Linus决定自己编写一个独立的操作系统,于是在Internet上发布了一个通告。这个成为Linux的系统在Internet上的众多爱好者的帮助下迅速开发出来,并取得了巨大的成功。Linux和其他Unix的源码完全无关,严格来讲只能算仿制品。但Linux的开发者来自整个Internet,具有各种Unix系统的背景,因此Linux也集中了各种Unix的优点,从性能上与商业产品毫不逊色。
Linux仅仅指操作系统的内核,使用这个内核的系统的Linux版本很多,例如RedHat Linux,Debian Linux,Slackware Linux等。当前Linux的内核已经发展到了2.2版本,发行版本为RedHat 5.1、Debian 2.0等
由于Linux如此流行,原来BSD的研究人员也打算创作一个运行在Intel平台上的免费BSD系统,结果产生了FreeBSD系统。
由于FreeBSD继承了BSD的成熟代码,因此在稳定性和可靠性方面非常好,也因此受到小公司的青睐,很?斐晌 ?/FONT>Li nux之?蟮牡诙 竺夥巡僮飨低场?/FONT>FreeBSD运行在Internet上最大的ftp服务器ftp.cdrom.com和WWW节点yahoo.com上以及其他繁忙的站点上,国内流行的163.net、371.net等也是建立在它之上的。由于FreeBSD和Linux同为运行在Intel平台上的操作系统,常常会造成混淆,将运行FreeBSD的系统认为是名气更大的Linux。
SCO OpenServer与Unixware
SCO Unix是在国内比较有名气的操作系统,因为他使用Inte l的平台,并且较早进入中国市场。它的历史可以追溯到MicroSoft开发的Xienx,Xienx是运行在Intel平台上的一种基于Unix V 6的系统,后来Xienx开发部门独立出来成立了SCO公司,并基于AT&T System VR3.2开发了SCO Unix,其最新的版本为增强了图形接口的SCO OpenServer 5.0.4。此时AT&T已经将它们负责Unix的部门USL(Unix系统实验室),卖给了Novell公司,它们的Unix被更名为UnixWare ,但是Novell正逢经营问题,不得不将UnixWare再次卖给SCO。
Novell在购买UnixWare之后的一个重要举动是将Unix商标赠送给一个非盈利的Unix组织X/Open,结束了USL与BSD以及其他厂商的纷争。而现在UnixWare成为了SCO的下一代产品,OpenServer则进入了维护时期。