一、Multics计划
1965年,AT&T贝尔电话实验室、通用电气公司、麻省理工学院MAC课题组一起联合开发一个称为Multics的新操作系统。Multics系统的目标是要向大的用户团体提供对计算机的同时访问,支持强大的计算数据存储,以及允许用户在需要的时候容易地共享他们的数据。
1969年Multics的原始版本在GE645计算机上运行了,但它既没能提供预定的综合服务,而且,连它自己也不清楚究竟什么时刻算达到开发目标。在这种情况下,AT&T贝尔电话实验室首先退出了这一项目。
二、UNIX系统的萌芽
Multics项目中止后,AT&T贝尔电话实验室中参加开发的主要人员开始寻找其他有趣的项目。这其中,KenThompson写了一个名叫“太空漫游”的游戏程序。他找到了一台基本无人使用的DEC PDP-7计算机运行他的程序。然而由于DEC PDP-7缺少程序开发程序,以致于Thompson不得不在另一台运行GECOS操作系统的Honeywell635上交叉汇编子他的程序,然后再通过纸带加载到DEC PDP-7上。
为了方便太空漫游的开发,Thompson和Dennis Ritchie一起着手开发DEC PDP-7上的操作环境:
1.一个简单的文件系统,它后来深化成称之为System V文件系统的早期版;
2.一个进程子系统和shell(命令解释器)。
这样这个系统就足以满足他们的需要,他们将这个操作环境命名为UNIX。
Thompson和Ritchie后来开发了B语言(后来Ritchie又将其发展为C语言),并扩展了UNIX系统,UNIX系统便在AT&T贝尔电话实验室流行起来。
1973年11月,他们用C语言彻底重写,这是UNIX操作系统迈向成功之路的关键一步。完成后,Thompson和Ritchie共同在《ACM通信》上发表了首篇UNIX论文,The UNIX Time Sharing System。
三、UNIX系统的发展
而由于AT&T公司受到美国反托拉斯法的诉讼,与联邦政府签署了一份协议,这份协议不允许AT&T公司生产与电话和电报服务无关的设备,也不允许从事除“公用通信服务”外的任何商业活支。这样,AT&T公司就陷入了不能经营计算机产品的尴尬局面。
而自从在《ACM通信》中发表了关于UNIX的论文后,越来越多的人希望能够获得UNIX软件和源码。为了不违背与政府签署的协议,AT&T公司既不出售UNIX、也不为其作广告、不对其提供技术支持。而同时为了满足大家的需要,AT&T公司在签署简单协议的前提下,将UNIX系统无偿地提供给大学,以供教学与研究。
由于AT&T公司对UNIX的策略,使得UNIX在全世界范围内快速发展。到1975年底,它已经传播到西至耶路撒冷的Hebrew大学,南至澳大利亚的新南威尔士大学,北至加拿大多伦多大学的世界各地。
1979年1月发行的UNIX版本是一个真正可移植的UNIX系统,它对其后的UNIX发展有着深远的影响。该版本最初是运行在PDP-11和Interdata 8/32上的,该系统更加健壮,而且提供了比版本6更强大的功能,但其相当慢。许多领取了许可证的用户针对这一情况从不同方面对系统的性能进行了改进,AT&T又将这些改进中的许多加入了其以后的UNIX发行中。
这种使用者与开发者之间的合作精神正是UNIX快速成长和不断发展的关键因素。不幸的是,当UNIX在商业上取得很大成功之后,这种精神就不存在了。