欢迎光临我的博客
分类: 系统运维
2010-04-21 21:36:54
1965年时,贝尔实验室(Bell Labs)加入一项由通用电气(General Electric)和麻省理工学院(MIT)合作的项目;该项目要建立一套多使用者、多任务、多层次(multi-user、multi-task、multi-level)的MULTICS操作系统。直到1969年,因MULTICS项目的工作进度太慢,该项目就被停了下来。当时,Ken Thompson已经有一个称为“星际旅行”的程序在GE-635的机器上运行,但是反应非常的慢,正巧被他发现了一台被闲置的PDP-7(Digital的主机),Ken Thompson和Dennis Ritchie就将“星际旅行”的程序移植到PDP-7上。而这部PDP-7就此在整个计算机历史上留下了芳名。
MULTICS 其实是"MULTi-plexed Information and Computing System"的缩写,在1970年时,那台PDP-7却只能支持两个使用者,当时,Brian Kernighan 就开玩笑地戏称他们的系统其实是:"UNi-plexed Information and Computing System",缩写为"UNICS",后来,大家取其谐音,就称其为"UNIX"了。1970年可称为是UNIX元年。
1971年,他们申请了一台PDP-11/20,申请的名义是:要发展文书处理系统。该提案被采纳,他们也就发展出了一套文书处理系统——就是现在UNIX操作系统里面文书处理系统(nroff/troff)的前身。有趣的是,没有多久,贝尔实验室的专利部门真的采用了这套系统作为他们处理文件的工具,而贝尔实验室的专利部门也就顺理成章地成为UNIX的第一个正式使用者。当时,那部PDP-11/20只有0.5MB磁盘空间。而描述这整个系统的文件被标示为:"First Edition",版本日期是1970年11月。从此以后,UNIX的版本就以系统文件的版本来称呼。
1973年,Ken Thompson (肯 • 汤姆森)和 Dennis Ritchie(丹尼斯·里奇)发明了C语言之后,着手将UNIX程序用高阶的C语言改写,这个时候已经是第4版了(C的前身叫B,也是他们两个人发明的,为了改写UNIX,他们将B语言做了一番改进,而成了C语言)。这个划时代的动作让UNIX能够很轻易地被移植到各种不同的机器上。
1974年,他们在计算机协会交流杂志()上正式发表了UNIX,吸引了更多学术界的注意与参与。从此,UNIX逐渐成为网络工作站的标准,让使用不同机器的使用者,都能使用类似的UNIX操作系统,这对于网络世界的标准化有着很大的贡献。
1975年第6版(6th Edition)UNIX发表,在UNIX发展史上,它具有里程碑式的意义。因为这是一个真正具有现代意义的操作系统,它已经几乎具备了现代(单机)操作系统的所有概念:进程、进程间通信、多用户、虚拟内存、系统的内核模式和用户模式、文件系统、中断(自陷)管理、I/O设备管理、系统接口调用(API)、用户访问界面(shell)。当然由于这时国际互联网(Internet)还没有产生,所以该版本并不具备网络功能。
该版shell已经具备了很多常用的命令:ls, mkdir, rm, mknod, cd等。
同时,这也是贝尔实验室对外发布的最后一版免费UNIX。在这一版本上,衍生了众多厂商开发的UNIX大家族。从其下一个版本System V开始,贝尔实验室使对其不再开放,而要付费才能获取了。
1977年,加州大学伯克利分校(UC Berkeley)开始公开Pascal编译器,连带地发布了对UNIX 6th Edition的改进程序代码,这就是所谓的"1 BSD"(1st Berkeley Software Distribution),也开创了UNIX的另一个分支:BSD系列,向外发行。这个时候的BSD已经很不同于AT&T了( 4.3BSD中来自AT&T UNIX的代码已经不足10%),并且早已经领先与AT&T的UNIX(最早实现TCP/IP协议的就是BSD)。而AT&T的UNIX系统实验室,也在不断改进它们的商用UNIX版本,它们吸收了 中已有的各种先进特性,并结合其本身的特点,推出了System V版本。这样就使得UNIX分裂为了两个大的派系,即基于AT&T的SystemV和基于伯克利代码的BSD。