UNIX 家族及Linux
Unix成长为一个非私有的操作系统,是因为1956年的AT&T公司受命于联邦去经营电报电话服务。当然也可以开发软件,甚至那个软件可以有”合理”收费的许可证,但是这个公司却被禁止从事任何和计算机有关的商业活动。Unix,在开发的过程中,没有任何的奖励制度和管理,从一开始在AT&T公司出现时,其是一种近似于好奇或兴趣的东西。
然而,20世纪70年代,AT&T公司开始注意到Unix所带来的商业价值。公司的律师开始寻找一些手段来保护Unix,并让其成为一种商业机秘。从1979年Unix的版本V7开始,Unix的许可证开始禁止大学使用Unix的源码,包括在授课中学习。但一个荷兰阿姆斯特朗Vrije大学使用版本V6的计算机科学系的教授Andrew Tanenbaum说。在1987年,他为教学目的克隆了一个Unix,创建一个叫Minix的开源的操作系统,并可以在80286的Intel芯片上运行。
“Minix使用了所有和Unix一样的想法,并且这是一个非常灿烂的事物”,Salus说,”只有一个专门是程序员的并且非常了解操作系统内部的人才能干出这件事来”。Minix从此变成了另一个起点–Linus Torvalids 在1991年使用Minix创造了Linux –这并不是一个简单的Unix克隆版本,只不过它长得像Unix。
让我们再回到Linux出现的十年以前,Bill Joy,毕业于加利福尼亚州大学伯克利分校,当年,他在学校的时候拷贝了Bell 实验室的Unix版本,并且发现了这是一个很不错的可以使用Pascal编译器和文本编译器的操作系统平台。于是,他更改变扩展了Unix,形成了Unix的第二个最主要的分枝–BSD(Berkeley Software Distribution)Unix。在1978年3月,Joy卖出了第一个BSD的拷贝:50美金。
到了1980年,有两个最主要的Unix的版本线,一个是Berkeley的BSD,另一个是AT&T的Unix,在这个时候,很显然,竞争最终引发了Unix的战争。在这场战争中,好的是,软件开发人员还是能够得到Unix的源码并对其按照自己的需要和兴致进行裁剪。而不好的是,Unix开始一发不可收拾地开发不停地出现各种各样的变种。
1982年,Joy创建了Sun Microsystems公司并提供了工作站–Sun-1,运行在当时的一个BSD的版本,叫SunOS(Solaris以之后的十年出现)。而AT&T则在随后的几年中发布了Unix System V的第一版,一个具有强大影响力的操作系统,最终造就了IBM的AIX和HP的HP-UX。
三大派生版本:UNIX System V、BSD UNIX (386BSD)、UNIX Like
UNIX System V:
主要有 A/UX AIX HP-UX IRIX LynxOS SCOOpenServer Tru64 Xenix OS/2 solaris(SUN OS)。
A/UX
A/UX(取自Apple Unix)是苹果电脑(Apple Computer)公司所开发的UNIX操作系统,此操作系统可以在该公司的一些麦金塔电脑(Macintosh)上运行,最末(或说最新)的一套A/UX是在Macintosh II、Quadra及Centris等系列的电脑上运行。A/UX于1988年首次发表,最终的版本为3.1.1版,于1995年发表。A/UX至少需要一颗具有浮点运算单元及标签页式的存储器管理单元(Paged Memory Management Unit,PMMU)的68k处理器才能运行。A/UX是以System V 2.2版为基础所发展,并且也使用System V 3(简称:SysV 3)、System V 4、BSD 4.2、BSD 4.3等的传统特色,它也遵循POSIX规范及SVID规范,不过遵循标准版本就难以支持最新的信息技术,因此在之后的第二版便开始加入TCP/IP网络功能。有传言表示有一个后续版本是以OSF/1为主要的代码基础,但却从未公开发表过,不过无从证实此版本是否真存在过。
Aix logo
AIX(Advanced Interactive eXecutive)是IBM开发的一套UNIX操作系统。它符合Open group的UNIX 98行业标准(The Open Group UNIX 98 Base Brand),通过全面集成对32-位和64-位应用的并行运行支持,为这些应用提供了全面的可扩展性。它可以在所有的IBM ~ p系列和IBM RS/6000工作站、服务器和大型并行超级计算机上运行。AIX的一些流行特性例如chuser、 mkuser、 rmuser命令以及相似的东西允许如同管理文件一样来进行用户管理。AIX级别的逻辑卷管理正逐渐被添加进各种自由的UNIX风格操作系统中。
solaris logo
Solaris是SUN公司研制的类Unix操作系统。目前最新版为Solaris 11。
早期的Solaris是由BSDUnix发展而来。这是因为升阳公司的创始人之一,比尔·乔伊(Bill Joy)来自柏克莱加州大学(U.C.Berkeley)。但是随着时间的推移,Solaris现在在接口上正在逐渐向System V靠拢。目前Solaris仍旧属于私有软件。2005年6月14日,Sun公司将正在开发中的Solaris 11的源代码以CDDL许可开放,这一开放版本就是OpenSolaris。
Sun的操作系统最初叫做SunOS,SunOS 5.0开始,SUN的操作系统开发开始转向System V 4, 并且有了新的名字叫做Solaris 2.0;Solaris 2.6以后,SUN删除了版本号中的"2,因此,SunOS 5.10就叫做Solaris 10。Solaris的早期版本后来又被重新命名为Solaris 1.x. 所以"SunOS"这个词被用做专指Solaris操作系统的内核,因此Solaris被认为是由SunOS,图形化的桌面计算环境,以及它网络增强部分 组成。
Solaris运行在两个平台:Intel x86及SPARC/UltraSPARC。后者是升阳工作站使用的处理器。因此,Solaris在SPARC上拥有强大的处理能力和硬件支援,同时Intel x86上的性能也正在得到改善。对两个平台,Solaris屏蔽了底层平台差异,为用户提供了尽可能一样的使用体验。
HP-UX
HP-UX(取自Hewlett Packard UniX)是惠普科技公司(HP,Hewlett-Packard)以SystemV为基础所研发成的类UNIX操作系统。HP-UX可以在HP的PA-RISC处理器、Intel的Itanium处理器的电脑上运行,另外过去也能用于后期的阿波罗电脑(Apollo/Domain)系统上。较早版本的HP-UX也能用于HP 9000系列200型、300型、400型的电脑系统(使用Motorola的68000处理器)上,和HP-9000系列500型电脑(使用HP专属的FOCUS处理器架构)。
IRIX
IRIX是由硅谷图形公司(Silicon GraphicsInc.,一般用简称:SGI)以System V与BSD延伸程序为基础所发展成的UNIX操作系统,IRIX可以在SGI公司的RISC型电脑上运行,即是采行32位、64位MIPS架构的SGI工作站、服务器。
Xenix是一种UNIX操作系统,可在个人电脑及微型计算机上使用。该系统由微软公司在1979年从美国电话电报公司获得授权,为Intel处理器所开发。后来,SCO公司收购了其独家使用权,自那以后,该公司开始以SCO UNIX(亦被称作SCO OpenServer)为名发售。值得一提的是,它还能在DECPDP-11或是Apple Lisa电脑运行。它继承了UNIX的特性,Xenix具备了多人多任务的工作环境,符合UNIX System V的接口规格 (SVID)。
BSD UNIX (386BSD)
主要有,DragonFly BSD,FreeBSD,NetBSD,NEXTSTEP,Mac OS X,OpenBSD,SUN OS,OpenSolaris,OpenIndiana.
不同的BSD操作系统针对不同的用途及用户,可应用于多种硬件构架。在政府机构中常能看到BSD的身影。虽然下面的BSD功能可能并非独有,但每种BSD在各自的领域,都逐渐具有了良好声誉,有的专注于性能,有的则以安全见长。
FreeBSD吉祥物
FreeBSD是一种类UNIX操作系统,但不是真正意义上的UNIX操作系统,它是由经过BSD、386BSD和4.4BSD发展而来的Unix的一个重要分支,它支持 x86 兼容(包括 Pentium; 和Athlon(TM))、amd64 兼容(包括 Opteron(TM)、Athlon 64 和 EM64T)、 Alpha/AXP、IA-64、PC-98以及 UltraSPARC® 架构的计算机。它运行在Intelx86 family兼容处理器、DEC Alpha、Sun微系统的UltraSPARC、Itanium(IA-64)和AMD64处理器上。针对PowerPC的支持正在开发中。它被普遍认为是相当可靠和稳定的。苹果电脑的Mac OSX即以 Mach 为内核, 配合 FreeBSD 的驱动程序和实用工具为基础。FreeBSD 源于 BSD ──美国加州大学伯克利分校开发 UNIX® 版本它由来自世界各地的志愿者开发和维护.FreeBSD 为不同架构的计算机系统提供了不同程度的支持.
FreeBSD是以一个完善的操作系统的定位来做开发。其内核、驱动程序以及所有的用户层(Userland)应用程序(比方说是Shell)均由同一源代码版本控制系统保存(目前使用Subversion并与CVS兼容)。相较于另一知名的的操作系统Linux,其内核为一组开发人员设计,而用户应用程序则交由他人开发(例如GNU计划),最后再由其他团体集成并包装成Linux包。
FreeBSD默认是无桌面环境的命令行界面,想要使用桌面环境必须自行安装,或是使用PC-BSD之类的桌面发行版。
NetBSD logo
NetBSD 是一份免费,安全的具有高度可定制性的类Unix操作系统,适于多种平台,从64位AMDAthlon服务器和桌面系统到手持设备和嵌入式设备。它设计简洁,代码规范,拥有众多先进特性,使得它在业界和学术界广受好评,用户可以通过完整的源代码获得支持。许多程序都可以很容易地通过NetBSD Packages Collection获得。可以在许 多平台上执行,从 64bit alpha 服务器到掌上型的设备。由于简洁的设计 和先进的特征,使得它在生产和研究方面,都有卓越的表现,而且它也有受 使用者支持的完整的原始码。许多应用程序也是易于移植的。
openBSD logo
OpenBSD是一个从NetBSD衍生出来的类Unix操作系统。专案领导人希欧·德若特(Theo De Raadt)在1995年发起了OpenBSD专案,希望创造一个注重安全的操作系统,此外OpenBSD也以高品质的文件、坚持开放程式码以及严格的软体授权著名。OpenBSD的吉祥物是刺豚。
OpenBSD包含了一些在其他操作系统缺少或是选择性的安全功能,此外OpenBSD极度重视程式码的品质,任何对核心的修改都需要经过严格的审查。OpenBSD可以在17种不同的硬体环境下运作,包含DEC Alpha、Intel i386、Hewlett-Packard PA-RISC、AMD64、Motorola 68000、PowerPC、Sun SPARC等。
OpenBSD在密码学和安全方面特别出众,可移植性也很好,当然略逊于NetBSD。安全功能如OpenSSH,是由OpenBSD率先开创的。OpenBSD作为安全请求机器(security demanding machines)运行,受到好评。
DragonFly是一个以与 FreeBSD 采用的实现方式不同的方式来实现并发、SMP、集群以及其他操作系统特性的 BSD 分支。
DragonFly BSD 是一套开放源代码的类Unix操作系统,自FreeBSD 4.8分支。
由于FreeBSD开发组将于FreeBSD 4.11后不再推出新的4系列版本(仅做安全性更新),而新的FreeBSD 5系列初期又有效能及稳定性等等的质疑,因此Matt Dillon在2003年六月另外成立分支计划,并于同年七月时于FreeBSD的邮件讨论组群上公布。
Dillon当时认为FreeBSD 5所使用的Threading与SMP架构将会使得系统难以维护,但不被FreeBSD的发展团队接受,于是决定自行发展分支。即便如此,DragonFly BSD的发展团队仍与FreeBSD密切合作,双方仍然经常互相帮助对方修正臭虫,以及驱动程序的更新。
DragonFly 项目的创始人和目前的 leader,Matthew Dillon曾经是 FreeBSD SMPng 项目的重要开发人员,在 FreeBSD 3.x 时代开始,他对 FreeBSD 虚拟内存子系统、VFS子系统等多个重要部分进行了重写和增强,这些工作给 FreeBSD 4.x 系列的可靠性和性能打下了坚实的基础。FreeBSD 项目于 2000 年 6 月在 Sunnyvale 的 Yahoo 公司总部举行了 SMP 峰会,并正式启动了 SMPng 计划,即利用 BSDi 捐赠的 BSD/OS 源代码和相关的设计思想来改善 FreeBSD 的 SMP 能力。
DragonflyBSD是最年轻的BSD,专门提供比FreeBSD更优秀的对称多处理机系统,并使内核直接支持SSI集群,以取得更好的计算效果。这个项目在此方向上,才开始数年,主要关注i386平台。
Mac OS X logo
Mac OS X是苹果公司(原苹果电脑公司)为麦金塔电脑开发的专属操作系统Mac OS的最新版本。Mac OS X于2001年首次在市场上推出,并从2002年起随麦金塔电脑发售。它是一套Unix基础的操作系统,包含两个主要的部份:核心名为Darwin,是以FreeBSD源代码和Mach微核心为基础,由苹果公司和独立开发者社区协力开发;及一个由苹果电脑开发,名为Aqua之专有版权的图形用户界面。
Mac OS X Server亦同时于2001年发售,架构上来说与工作站(客户端)版本相同,只有在包含的工作组管理和管理软件工具上有所差异,提供对于关键网络服务的简化访问,像是邮件传输服务器,Samba软件,LDAP目录服务器,以及名称服务器(DNS)。同时它也有不同的授权型态。
简单来说,它是Mac OS "版本10 "的分支,然而它与早期发行的Mac OS相比,在Mac OS的历史上是倾向独立发展的。它以Mach核心为基础,加入UNIX的BSD实现,再集成到NeXTSTEP当中(NeXTSTEP为当时史蒂夫·乔布斯(Steve Jobs)于1985年被迫离开苹果后,创建NeXT公司所发展的)。
同时,苹果电脑企图创造一个独家拥有的"新世代"操作系统,但只有少部份成功。最后NeXT的操作系统—(在当时称作OPENSTEP—)被选为苹果下个操作系统的基础形式,然后苹果电脑将NeXT全部买下来,并重新聘雇乔布斯。
乔布斯重回苹果的领导层次结构后,带领着苹果公司把原本倾向便利程序员的OPENSTEP,转换到苹果电脑主要销售的家用市场,以及受到专业人士欢迎的Rhapsody系统上。经历过打击Mac OS独立开发者忠诚度的失算策略、Mac OS 9转换到新系统,减轻转变之后,Rhapsody演化为Mac OS X。
UNIX Like
主要有GNU / Linux,Minix,QNXUnix的特点。
Andrew S. Tanenbaum
Minix的名称取自英语Mini UNIX,是一个迷你版本的类Unix操作系统(约300MB),其它类似的系统还有Idris,Coherent,和Uniflex等。这些类Unix操作系统都是重新发展的,并没有使用任何AT&T的程序码。
Minix原来是荷兰阿姆斯特丹的Vrije大学计算机科学系的Andrew S. Tanenbaum教授所发展的一个类Unix操作系统。全部的程序码共约12,000行,并置于他的著作Operating Systems: Design and Implementation(ISBN 0-13-637331-3)的附录里作为范例。Minix的系统要求在当时来说非常简单,只要三片磁片就可以起动。
全套Minix除了起动的部份以汇编语言编写以外,其他大部份都是纯粹用C语言编写。分为:内核、内存管理及档案管理三部份。
Minix原始是设计给1980年代到1990年代的IBM PC和IBM PC/AT兼容电脑上执行。1.5版也有移植到已Motorola 68000系列CPU为基础的电脑上(如Atari ST,Amiga,和早期的Apple Macintosh)和以SPARC为基础的机器(如升阳sun公司的工作站)。2.0版则只有x86架构的版本。
Linux吉祥物
Linux,是一类Unix计算机操作系统的统称。该操作系统的核心的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。
严格来讲,Linux这个词本身只表示Linux核心,但在实际上人们已经习惯了用Linux来形容整个基于Linux核心,并且使用GNU工程各种工具和数据库的操作系统(也被称为GNU/Linux)。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行包包含大量的软件,比如软件开发工具、数据库(例如PostgreSQL、MySQL)、网络服务器(例如Apache)、X Window、桌面环境(例如GNOME和KDE)、办公包(例如OpenOffice)、脚本语言(例如Perl、PHP和Python)等等。
Linux核心最初是为英特尔386微处理器设计的。现在Linux核心支持从个人电脑到大型主机甚至包括嵌入式系统在内的各种硬件设备。
现在,Linux已经成为了一种受到广泛关注和支持的操作系统。包括国际商用机器公司和惠普、戴尔在内的一些信息业巨头也陆续支持Linux,并且成立了一些组织支持其发展,如Open Invention Network(OIN)(成员有IBM,索尼,NEC,Philips,Novell,Red Hat 等)购买了微软专利,允许任何个体以开放的原则使用。很多人认为,和微软Windows相比,作为自由软件的Linux具有低软件成本,高安全性,更加可信赖等优势,但是同时却需要更多的人力成本。
UNIX与Linux的区别和联系
UNIX是一个功能强大、性能全面的多用户、多任务操作系统,可以应用从巨型计算机到普通PC机等多种不同的平台上,是应用面最广、影响力最大的操作系统。
Linux是一种外观和性能与UNIX相同或更好的操作系统,但,Linux不源于任何版本的UNIX的源代码,并不是UNIX,而是一个类似于 UNIX的产品。Linux产品成功的模仿了UNIX系统和功能,具体讲Linux是一套兼容于System V以及BSD UNIX的操作系统,对于System V来说,目前把软件程序源代码拿到Linux底下重新编译之后就可以运行,而对于BSD UNIX来说它的可执行文件可以直接在Linux环境下运行。
linux就是模仿unix界面和功能的操作系统,但是源代码和unix一点关系都没有。换句话讲,linux不是unix,但像unix。(Linux is not unix!)
另外两大区别:
1) UNIX系统大多是与硬件配套的,而Linux则可运行在多种硬件平台上.
2) UNIX有些版本比如aix,hp-ux是商业软件是闭源的(不过solaris,*bsd等unix都是开源的),而Linux是自由软件,免费、公开源代码的.