日期:2014-05-16  浏览次数:20878 次

浅谈Unix、linux和自由软件运动

?

?

1?最初的OS不能满足足够多的终端同时使用,于是贝尔实验室、通用和MIT发起了一个Multics计划。希望能够制造一个足够强大的多任务、多用户系统。

2?Multics项目搁浅,贝尔实验室退出。但是贝尔实验室的工程师汤普森得到了一个灵感,恰巧手边有一台PDP-7计算机而老婆出去探亲一个月。于是他奋战四个星期,用汇编写了一个File?Server?System。这个汇编的OS革命性地提出了一切设备和程序都是文件的理念,沿用至今。这个OS在当时的贝尔实验室内广为流传,当时被称作Unics,以示这个OS源于Multics项目。Multics项目最终项目周期过长、资金短缺而没有取得成功。但是它培养的人才却带来了计算机界的一场革命。有趣的是,UNIX的最初发明,只是为了玩一个叫星际航行的游戏。

3?汤普森的OS最初是用汇编写出来的,不具备在不同的硬件架构上移植的可能性。于是他发明了B语言重写了一遍,但是性能还是不是很好。另一个同事,丹尼斯里奇在B的基础上设计出C程序设计语言,获得了很好的性能,且摆脱了硬件的束缚。用C语言编写的程序可以在不同的平台之间很容易地移植,这就为后来UNIX的大范围移植打下了基础。

4?1977年,伯克利的比尔修改出了一个很重要的分支,即BSD--Berkley?Software?DistributionAT&T则在1979年发布了重要的System?V。现在的纯种UNIX只剩下他们。Linux严格来说只能是UNIX?Like的一种实现。System?V一开始就发布了四个版本SVR1SVR2SVR3SVR4,四个版本带来了不同的分支。其中SVR4是其中最成功的版本,成为了后来很多UNIX共同特性的一个源头。

?

5

1984年的三件事:

????UNIX是一个非常强大的OS。它一开始就是专门为服务器或者大型工作站的多任务、多用户环境所准备。而早期的X86?处理器(比如286)则不支持多任务,于是没有人对把UNIX移植到PC上感兴趣。比较有趣的是,在AT&T的第七个版本的UNIX中,刚刚开始支持X86个人运算,与此同时,又增加了不准向学生提供源代码的条款。于是教授OS内核原理的谭宁邦教授突发奇想,完全不看UNIX源码,自己从零写了一个UNIX?LikeMinix,意为迷你UNIX。这项工作1984年开始,持续两年才完成,并于1986