白金译作 《黑客道简史》 第二章 Unix兴起

7362个读者 翻译: Angelo  09/24/2007 原文 引用 双语对照及眉批 字体大小

1969年,在ARPAnet光辉照耀不到的新泽西郊外,正有人在酝酿着什么,最终PDP-10的传统也将为此颠覆。ARPAnet诞生的那一年,贝尔实验室的黑客肯·汤普森Ken Thompson)发明了Unix

汤普森曾经参与了Multics的研发,这是一个与ITS拥有共同先祖[1]的分时操作系统。Multics可以说是一个试验台,通过它,人们尝试是否可以将复杂的操作系统(甚至是绝大部分程序)隐藏起来,不让用户直接接触。这样就能从外部简单的操控(甚至是编辑)Multics,这可谓是质的突破。[2]

Multics变得臃肿并最终成为一个累赘的时候,贝尔实验室退出了(稍后,这个系统被霍尼韦尔公司推向了市场,但是没能成功)。在失去Multics作业环境之后,肯·汤普森找来了一台闲置的DEC PDP-7型计算机,打算在这上面将Multics的理念和自己的创想合二为一。

另一位叫丹尼斯·里奇Dennis Ritchie)的黑客针对汤普森摇篮里的Unix开发了一种新的语言——C语言。如同Unix一样,C语言的设计非常出色,严谨而不失弹性。这些工具在贝尔实验室中流行开来,在大家的帮助下汤普森里奇的申请终于在1971年得以通过。他们被授权为内部开发一套我们现在所说的“事务工作自动化系统”(office automation system)。[3]然而汤普森里奇的雄心却远不止于此。

当时的传统观点认为,操作系统必须用严密的汇编程序编写,这样才能“榨干”主机得到最大效能。汤普森里奇却相信,当时的硬件和编译器技术已经很成熟,足可以担负一个全部由C语言编写的操作系统了。终于,1978Unix就已经可以成功的移植到多种机型上了。

这是史无前例,意义深远的。也就是说,如果Unix能在不同的机型上展现相同的界面和能力,它就可以被作为一个通用软件环境。用户需要每次为一种机型担负整套新软件的日子一去不复返了。黑客们可以将软件工具包移入不同的机器,这可比每次重新“生火、造轮子”要强得多了。

除了可移植性之外,UnixC语言还有许多显著优势。它们都秉承了“KISS”设计哲学[4]。程序员可以轻松掌握C语言的逻辑结构(这与之前和之后的语言都大不一样),而不必整天翻阅用户指南。而Unix则可以看作是一个颇具弹性的工具包,由许多独立设计的程序有效地相互连接而成。

UnixC语言应用范围之广,有时甚至是完全出乎设计者意料的。虽然没有什么正式的推广计划,但是它们还是迅速在AT&T内部传播开来。到了1980年,已经蔓延到为数众多的大学和计算研究机构,还有数以千计的黑客想把它们带回家。

早期Unix文化中的主力机型是PDP-11和其后裔——VAX。由于Unix具有高度的可移植性,所以能在为数众多的机器上原封不动的运行,而并不局限于那些接入ARPAnet的机器。[5]没人再用汇编程序了,C程序欣然进驻了所有机器。

Unix甚至有了自己的网络,各式各样的UUCP[6]低速,不稳定却成本低廉。两台Unix机器可以通过普通的电话线相连,交换点对点电邮。这个功能并非一个可选组建,而是被写入了系统。1980年,第一个Usenet站点开始交换广播新闻[7],借此形成的巨大的分布式电子公告板系统,将会迅速成长并超越ARPAnet。围绕UsenetUnix站点开始形成了自己的网络疆域。

一些Unix站点本身是基于ARPAnet的。这样PDP-10Unix/Usenet文化就开始在边缘交汇,融合。融合在一开始并不是一帆风顺的。PDP-10黑客Unix用户视作是一堆暴发户,与LISPITS令人爱不释手的复杂华美相比,他们的工具简直原始到可笑。“刀耕火种的家伙”,他们嘟囔道。

除此之外,这里还有第三路人马。第一台个人电脑在1975年进入市场,1977年苹果公司成立,随后的几年里创新以几乎难以置信的速度喷涌而至。微型计算机的轮廓日渐明朗,这吸引到了另一代睿智的年青黑客。他们使用BASIC语言,无论是PDP-10游击队还是Unix信徒,在他们眼中都原始的不值一提。

 

 

 

 

 

 

 

 

1.这里是指“兼容分时系统”(Compatible Time-Sharing SystemCTSS)。

2.也就是后台运行,而用户只需要使用命令。

3.这里是说贝尔实验室拨款给他们添置了一台 PDP-11/20

4.KISS是“Keep It Simple, Stupid”的缩写,即“务求简约”。

5.在这一时期,接入ARPAnet的主力机型也是PDP-11VAX

6.UUCP,UUCPUnix-to-Unix Copy的缩写,是一组软件程序,所以说是“各式各样”的。

7.Usenet,又称友思网。是一种(最初)基于UUCP的世界性新闻组网络系统。广播新闻是指Usenet中的一个站点向网络(局域网或广域网)上所有其他站点发送消息。


http://www.angeloliu.org/read-56.html

 

继续阅读
  • 10个简单步骤建立法西斯美国

    法西斯美国采取的10个步骤

  • 程序员怎样学数学

    这是一篇介绍程序员如何学数学的文章,学数学,从现在开始,恩。

  • 《大教堂与市集》全文中译版(The Cathedral and the Bazaar)

    大教堂与市集 The Cathedral and the Bazaar 埃里克·斯蒂芬·雷蒙 (Eric Steven Raymond)【著】 刘安辙(Angelo Liu)【译】   *一 大教堂...

  • 如何学习C语言

    你想学习C编程语言吗?太好了!C语言绝对值得你花时间去学。这里有可以遵循的学习C语言的五个步骤。 1、买一本C编程的书。你也可以使用在线的C编程指南,但是依我的经验,书更好一点。我有两本书要推荐,Pr...

  • Digg,维基百科以及Web 2.0民主的迷思

    digg,维基百科的成功真的是体现了群众的智慧吗?研究分析表明,实情可能并非如此。

  • 《大教堂与市集》第一章 大教堂与市集

    Linux是颠覆性的,但是在五年以前(1991年)谁能想到,这些散布在世界各地的开发者仅仅依靠细细的网线相连,在业余的时间里就能开发出一套世界级的操作系统呢? 至少这让我深感意外。我在上个世纪80年...

  • 《黑客道简史》 序言:真正的程序师

    最初,这里有一群真正的程序师。 他们从不以此自称,也不曾用“黑客”或其他特殊的字眼。据一位“真正的程序师”回忆,这个说法是1980年后才出现的。但是从1945年开始,计算机科技便不断吸引着这世界上无...

  • 伯特兰·罗素名言录

    在美国,所有人都认为没有什么人比他的社会地位高,因为人人生而平等。但是,他可不承认没有人比他社会地位低。

标签:

内容有问题?请与我们联络。

译作评分

  • Currently 0.00/5
  • 1
  • 2
  • 3
  • 4
  • 5
 0.0  |  0 个评分

2条评论    0眉批

  • 1.

    vole 童生

    刚看到,不过这篇文章在《开源软件文集》这本书里被翻译过了,oreilly&中国电力出版社的,我正好有这本书
    当然可能很多人都没有,所以还是支持Angelo

    09/26/2007

  • 2.

    Angelo 榜眼 | Blog

    原来是这样啊~这本书我不知道有中文版的
    呵呵,既然开始了  就翻译下去吧  :-)

    09/26/2007

添加评论

欢迎访问译言网。在这里,您可以。。。

阅读
发现
翻译