Unix 和 Posix

Unix 和 Posix

20 世纪 60 年代是大型、复杂操作系统盛行的年代,如 IBM 的 OS/360 和 Honeywell 的 Multics 系统。OS/360 是历史上最成功的软件项目之一,而 Multics 虽然持续存在了多年,却从来没有被广泛应用。贝尔实验室曾经是 Multics 项目的最初参与者,但是考虑到该项目的复杂性和缺乏进展于 1969 年退出。鉴于 Multics 项目不愉快的经历,一组贝尔实验室的研究人员—Ken Thompson、Dennis Ritchie、Doug Mcllroy 和 Joe Ossanna,从 1969 年开始在 DEC PDP-7 计算机上完全用机器语言编写了一个简单得多的操作系统。这个新系统中的很多思想,如层次文件系统、作为用户级进程的外壳概念,都是来自于 Multics,只不过在一个更小、更简单的程序包里实现。1970 年,Brian Kernighan 给新系统命名为“Unix”,这也是一个双关语,暗指“Multics” 的复杂性。1973 年用 C 语言重新编写其内核,1974 年,Unix 开始正式对外发布。

贝尔实验室以慷慨的条件向学校提供源代码,所以 Unix 在大专院校里获得了很多支持并继续发展。最有影响的工作是 20 世纪 70 年代晚期到 80 年代早期,在美国加州大学伯克利分校,伯克利的研究人员在一系列发布版本中增加了虚拟存储器和 Internet 协议,称为 Unix 4.xBSD(Berkeley Software Distribution)。与此同时,贝尔实验室也在发布自己的版本,即 System V Unix。其他厂商的版本,如 Sun Microsystems 的 Solaris 系统,则是从这些最初的 BSD 和 System V 版本中衍生而来。

20 世纪 80 年代中期,Unix 厂商试图通过加入新的、往往不兼容的特性来使它们的程序与众不同,麻烦也就随之而来了。为了阻止这种趋势,IEEE(电气和电子工程师协会)开始努力标准化 Unix 的开发,后来由 Richard Stallman 命名为“Posix”。结果就得到了一系列的标准,称做 Posix 标准。这套标准涵盖了很多方面,比如 Unix 系统调用的 C 语言接口、外壳程序和工具、线程及网络编程。随着越来越多的系统日益完全地遵从 Posix 标准,Unix 版本之间的差异正在逐渐消失。

下一页