在上一篇《世界算力简史(上)》里,小枣君提到了ENIAC的诞生。
【资料图】
其实,在1945年-1948年,也就是我们中国还处于内战时期时,除了ENIAC诞生外,科技领域还发生了好几件大事。这些大事相互作用,最终彻底改变了人类的命运。
第一件大事:冯·诺依曼架构的提出。
冯·诺依曼(John Von Neumann)是美籍匈牙利人,1903年出生,1930年移民美国,成为普林斯顿大学的教授。
冯·诺依曼
1944年,冯·诺依曼开始参与原子弹的研制。因为研制过程需要进行大量的计算,他就开始关注计算机相关的研究进展。经人引荐,他作为顾问,参与到了ENIAC的研究中。
基于ENIAC的研究,冯·诺依曼等人在1945年又提出了一个新的方案——EDVAC(Electronic Discrete Variable Automatic Computer,电子离散变量计算机)。
在冯·诺依曼撰写的总结报告《关于EDVAC的报告草案》中,他详细阐述了一种制造电子计算机和进行程序设计的新思路,并设计了由运算器、逻辑控制、存储器、输入和输出设备组成的新型架构。
是的没错,这就是著名的冯·诺依曼架构。
冯·诺依曼架构
直到现在,冯·诺依曼架构仍然是我们计算机的主流架构。基于这个贡献,冯·诺依曼也被世人誉为“现代计算机之父”。(他在数学和经济学领域的贡献也很卓著,被称为“博弈论之父”。)
第二件大事:信息论的提出。
1948年,贝尔实验室的克劳德·香农(Claude Elwood Shannon)出版了《通信的数学理论》。这本书被看作是信息论的奠基之作。
香农
香农给出了通信系统的基本模型,提出了信息熵的概念以及数学表达式。
他指出,信息是可以被量化的,用数字编码可以代表任何类型的信息。香农还推出了比特(bit)的概念,将其称为“用于测量信息的单位”。
香农提出的香农公式,更是指导了整个通信行业发展,直到现在也没有被突破。
简单来说,香农的信息论,真正为信息技术奠定了真正的理论基础。他是当之无愧的现代信息通信技术“祖师爷”。
第三件大事:晶体管的发明。
这个就不用多说了吧。
1947年,同样是来自贝尔实验室的威廉·肖克利(William Shockley)、约翰·巴丁(John Bardeen)和沃尔特·布拉顿(Walter Brattain),共同发明了世界上第一个晶体管。
晶体管的问世,开辟了电子时代的新纪元。
上面说的三件大事,给信息技术革命打下了坚实的基础。信息技术产业,开始进入爆炸式发展的阶段。
1950-1967:集成电路时代
1951年,发明了ENIAC的约翰·埃克特(J. Presper Eckert)和约翰·莫奇利(John Mauchly)再度合作,研制了世界上第一台商用计算机系统——UNIVAC-1。
UNIVAC
这套系统被美国人口普查部门用于人口普查,它还成功预测了1952年底的美国总统大选,一夜之间名声大噪。
1952年,冯·诺依曼领导设计的EDVAC终于制造完成,开始运行。
冯诺依曼和EDVAC
相比ENIAC,EDVAC拥有独立的存储,是第一台使用磁带的计算机。当时,磁存储已初露锋芒,成为信息载体的新选择。
晶体管的应用
再后来,晶体管技术开始逐渐成熟,进入市场。
相比真空管(电子管),它的体积更小,功耗更低,使得电子设备变得更加小巧、省电。
1954年,世界上第一台晶体管计算机TRADIC,在美国空军投入使用(贝尔实验室研制)。其运行功耗不超过100W,体积不超1立方米,相比当年的ENIAC有天壤之别。
TRADIC
1958年,美国的RCA公司造出了世界上第一台全部使用晶体管的计算机——RCA501。
RCA501
不久后,1959年,IBM公司不甘落后,也生产出全部晶体管化的计算机——IBM 7090。
IBM 7090
基于IBM 7090,美洲航空公司和IBM共同研发了世界上第一款订票系统——Sabre。Sabre迅速普及,带动了IBM计算机的市场份额激增。
集成电路的诞生
说到这里,我们要回过头,讲讲发明了晶体管的威廉·肖克利。
肖克利
肖克利所带领的团队虽然合作发明了晶体管,但内部关系并不好。主要原因,是因为肖克利这个人为人刻薄,很难相处。
晶体管发明后,没多久,团队成员纷纷离开了他。
1954年,肖克利在贝尔实验室也待不下去了,就跑去教书。再后来,1956年,他来到美国西部加利福尼亚州的山景城,在一个名叫Palo Alto的小城市(后来是硅谷的一部分),成立了“肖克利半导体实验室”。
实验室吸引了很多优秀年轻人的加入。其中就包括罗伯特·诺伊斯(Robert Noyce)和戈登·摩尔(Gordon Moore)等8人。
后来,肖克利的事业再次因个人原因走入困境。于是,1957年9月18日(这个日子后来被《纽约时报》评为美国历史上最重要的十天之一),上面提到的8个年轻人,一起向肖克利提交辞呈。肖克利大发雷霆,痛斥这帮“忘恩负义”的年轻人,骂他们是“八叛徒”(traitorous eight)。
“八叛徒”出走后,共同成立了仙童半导体(Fairchild Semiconductor)。
这家公司大家应该很耳熟,它可以说是世界半导体产业的摇篮,芯片界的黄埔军校。
1959年,德州仪器的杰克·基尔比(Jack St. Clair Kilby)和仙童半导体的罗伯特·诺伊斯,先后发明了基于锗基底扩散工艺和硅基底平面工艺的集成电路,打开了集成电路时代的大门。
基尔比发明的集成电路
1959年之后的计算机,大量采用了晶体管和集成电路。计算机的体积不断缩小,功能不断增强。
软件产业的萌芽
拥有更快的处理器、更大的内存、更丰富的I/O设备,就意味着可以承担更多的任务。
于是,“多道程序系统”出现了。
在“多道程序系统”之前,计算机是手工操作,以及批处理系统操作,效率低下。
“多道程序系统”,采用了通道和中断技术,允许系统执行“挂起”操作。计算机从串行变成了并行,可以同时运行多个任务,提升了效率。
这个系统,基本上已经接近于真正的操作系统了。
除了操作系统之外,计算机语言也进步了。
1957年,IBM公司成功开发了FORTRAN高级语言。它是世界上第一个被正式采用并流传至今的高级编程语言。
所谓高级语言,就是一种接近于人们使用习惯的程序设计语言。它容易学习,通用性强,写出的程序比较短,便于推广和交流。
1960年4月,COBOL语言正式发布。1964年,BASIC语言发布。
高级语言的不断涌现,为后面的软件产业爆发奠定了基础。
IBM System/360
1960年代,IBM是世界计算机行业毫无疑问的“领头羊”。在计算机市场,他们占据绝对的市场领先地位(在北美市场,市占率超过三分之二)。
1961年12月,IBM公司启动了一项人类史上规模最大的商用产品开发计划。这项计划耗资50亿美元(约今日的460亿美元)、雇用6万多名新员工、新建5座工厂。
1964年4月7日,计划成果初现,IBM公司正式发布了六种规格的System/360商用大型主机。
IBM System/360
360,是360度角的意思,表示全方位的服务。它是世界上首个指令集可兼容计算机。单个操作系统可以适用整个系列,而不需要像之前的计算机一样,每种主机量身定做操作系统。
这时,人们才明白,原来电脑主体硬件升级之后,操作系统、应用软件还有外围硬件,都是可以继续使用的。“兼容”的概念,开始形成了。
IBM System/360是IBM史上最成功的机型,虽然研发投入巨大,但回报同样可观——每台主机的价格在250到300万美元之间(约合现在的2000万美元),每月售出超过千台。蓝色巨人年销售额的一半,都来自于这个系列。
美国太空总署的阿波罗登月计划,全美的银行跨行交易系统,以及航空业界最大的在线票务系统等,都使用了IBM System/360。
值得一提的是,虽然IBM霸占了大型机市场,但60年代初,很多IT公司创立,他们转向了IBM不太在乎的小型化计算机市场,并取得了不错的成果。
例如,DEC公司(1957年成立)以及他们发布的PDP-8、PDP-11、VAX-11系列主机。
PDP-8
这些主机体积小、功耗低、运算速度也不算差(每秒几十万次基本运算),获得了很多用户的欢迎。
1967-1979:大规模集成电路时代
时代的车轮继续滚滚向前。1967年,大规模集成电路(Large Scale Integration,LSI)出现了,真正的芯片时代到来。
1968年7月,罗伯特·诺伊斯和戈登·摩尔从仙童半导体公司辞职,创立了英特尔(Intel)公司。
最开始,英特尔是做半导体存储器产品的。后来,因为竞争激烈,他们转向处理器方向。
1971年,英特尔开发出了世界上第一个商用处理器——Intel 4004。这款处理器片内集成了2250个晶体管,能够处理4bit的数据,每秒运算6万次,工作频率为108KHz。
Intel 4004
Intel 4004的出现,标志着微处理器时代的开始。
1974 年,英特尔又推出了Intel 8080,其性能是4004的20倍。
Intel 8080
Intel 8080的意义丝毫不输于4004,因为它是面向个人电脑开发的微处理器。MITS公司于1974年推出的经典微型电脑Altair 8800,就是基于8080处理器。
Altair 8800
Altair 8800在1975年1月的《大众电子学》杂志社上发布后,引起了计算机爱好者的广泛关注。其中,就包括一个哈佛大学的楞青少年,以及他的伙伴。
他俩后来一起为Altair 8800设计了Altair BASIC,并创办了一家名叫Microsoft(微型软件)的公司。
没错,这个楞青的名字叫做比尔·盖茨,他的伙伴叫保罗·艾伦。
谁是第一台个人电脑
Altair 8800经常被称为第一台个人电脑(PC),但实际上,这个称谓是存在争议的。
1971年,美国的Kenbak公司发布了Kenbak-1计算机。这台计算机,被计算机历史博物馆认为是世界上第一台个人计算机。
Kenbak-1由中小型集成电路组成,没有使用微处理器。该系统最初售价为750美元,仅制造和销售了大约40台。1973年,Kenbak公司倒闭,Kenbak-1停产。
1973 年,法国R2E公司生产了第一台基于微处理器的商用计算机——Micral。Micral的说明书里,首次提到了“微机(Micro-computer)”。
Micral
另一个“第一台个人电脑”的有力争夺者,是来自著名的施乐公司帕洛阿图研究中心(Xerox PARC)的Alto。
1973年,他们推出了Alto(“奥托”)。它是第一台使用鼠标和图形用户界面(GUI)的计算机,和我们现在使用的计算机已经很像了。它的很多设计,对乔布斯的苹果,以及比尔盖茨的微软,产生了深远的影响。
1975年,王安公司(WANG)推出了世界上第一台具有编辑、检索功能的文字处理机,初具台式电脑的雏形。这台电脑的屏幕能直接显示文字,键盘可以快速修改文稿。
1977年,有三台个人电脑经典机型推出,分别是Commodore公司的Commodore PET、苹果公司的APPLE II、Tandy Radio Shack的TRS-80 Model II。
个人电脑的大量出现,意义极为重大。
它改变了计算机产业的商业模式,标志着算力不再仅为少数大型企业服务(大型机),而是开始昂首走向了普通家庭和中小企业。
技术蓄力
除了处理器之外,计算机存储设备和网络技术也有显著进步。
1973年,IBM又发明了Winchester(温彻斯特)硬盘3340。
Winchester 3340
这块磁盘使用了密封组件、润滑主轴和小质量磁头。工作时,磁头悬浮在高速转动的盘片上方,而不与盘片直接接触。这便是现代硬盘的原型。
换句话说,你现在用的磁盘,架构上和1973年没有太大区别。
网络方面,1970年,Internet的雏形ARPAnet基本完成。
1973年5月22日,施乐公司PARC研究中心的罗伯特·梅特卡夫(Robert M. Metcalfe)正式提出了“以太网”的设想,并于11月份设计实现。
1978年,在温顿·瑟夫(Vinton G. Cerf)、罗伯特·卡恩(Robert E. Kahn)等人的努力下,TCP/IP也诞生了。
在软件产业方面,1970年代的成果同样令人应接不暇。
1973年,贝尔实验室的肯·汤普森(Ken Thomson)和丹尼斯·里奇(Dennis Ritchie)正式发表论文,宣告了UNIX操作系统的存在,引起全行业轰动,被视为现代操作系统诞生的标志。
正在操作DEC PDP-11计算机的肯·汤普森(坐者)和丹尼斯·里奇(站者)
1970年和1972年,Forth编程语言和C语言先后开发完成。
数据库技术,也有重大突破。1970年,IBM公司的研究员埃德加·弗兰克·科德(Edgar Frank Codd),通过一篇名为《大型共享数据库数据的关系模型》的论文,开启了关系数据库时代。
埃德加·弗兰克·科德
关系数据库的出现,为后来数据库应用高速发展奠定了基础。
1974年,IBM公司圣何塞实验室发起了IBM System R项目,首次实现了结构化查询语言(SQL)。
1977年,后来被称为IT狂人的拉里·埃里森(Larry Ellison)与合作人共同投资了2000美元,成立了SDL公司(后来的Oracle公司)。1979年,他们推出了Oracle数据库,开启了商业数据库的全新时代。
Oracle的联合创始人
1970年代已经离我们比较久远了,很多事情可能都已淡忘。
但实际上,IT产业的真正起步,是在1970年代。大规模集成电路的崛起,存储技术的成熟,基础软件(操作系统、数据库)的出现,都是在那一时期。
令人眼花缭乱的成果,虽然现在看上去并不是很起眼,但都是从0到1的重要突破。
基础夯实之后,进入1980年,更疯狂的IT浪潮,即将袭来。
未完待续……
参考文献:
1.《计算机的发展历史汇总》,网络;
2.《算力发展简史》, 庐山真容;
3.《世界上第一台个人电脑是哪台?》,小盒子,知乎;
4.《电子计算机的发展世代概述》,吴国发,知乎;
5.《IT历史连载-计算机和个人电脑的历史》,网络;
6. 维基百科、百度百科;
本文来自微信公众号:鲜枣课堂 (ID:xzclasscom),作者:小枣君
关键词: