找工位
空间入驻
小程序

计算机简史:你想不通去脉 是因为你不了解来龙

2020-04-30 00:00:00
文章转载自"ToB行业头条"

来源 /    阿朱说(ID:azhushuo

作者 /   吕建伟  ·  编辑 /   吴暄



我们从1950年以后经历了大型机(IBM为代表)、小型机(DEC为代表)、个人电脑微机(Apple为代表)、笔记本电脑(1985年东芝1100是世界上第一台笔记本电脑),乃至MP3(世界上第一台MP3是1998年三星生产的,Apple iPod诞生于2001年)、平板电脑(iPad)、手表(iWatch)、智能手机(先是Nokia的Symbian智能手机,后是Apple的iPhone)


我们也走过了有线电报、无线电报、有线电话、无线手机(世界第一部手机是摩托罗拉公司工程师马丁·库帕在1973年发明)这些电信时代,我们也走过了电脑以太局域网时代、电脑电话线拨号上网时代、电脑ADSL上网时代、电脑WIFI上网时代、手机WIFI上网时代、手机2G3G4G上网时代。


我们有必要对这百年的ICT工业是如何交汇促进做个简单的历史梳理。你不明白这些历史,你就不明白为何现在是这样。


计算机有几个核心组成:
  • 芯片/CPU

  • 存储

  • 网络

  • 显示器

  • 键盘

  • 操作系统

  • 数据库

  • 中间件

  • 编程语言


01
芯片


1904年英国科学家弗莱明发明了电子真空二极管。1882年,弗莱明曾担任爱迪生电光公司技术顾问,1896年,马可尼无线电报公司成立,弗莱明被聘为顾问。1946年,世界上第一台通用计算机ENIAC诞生,用了1.7万根真空电子管和7200根二极管、7万个电阻器和1万个电容器、1500个继电器和6000个开关。每秒可以做5000次加法或400次乘法,是使用继电器运转的机电式计算机的1000倍。


1947年贝尔实验室的肖克利博士发明了晶体管。1956年,肖克利博士创办实验室吸引了诺伊斯、摩尔等青年才俊加盟,但是经过一年时间也没有做出什么可商业销售的产品。1957年,最年长的诺伊斯寻求到生产照相机与电子设备的仙童摄影器材公司老板费尔柴尔德的资助,带领众人离开肖克利实验室,成立了仙童半导体公司。


1958年,德州仪器的杰克·基尔比发明了世界上第一块半导体集成电路:锗集成电路,并因此获得2000年的诺贝尔物理学奖。和基尔比前后脚,诺伊斯也研制出了世界上第一块硅集成电路。


1958年,IBM给了他们第一张订单,订购100个硅晶体管,用于IBM电脑的存储器。1968年,诺伊斯和摩尔,带着格鲁夫脱离仙童公司,创办Intel。1971年11月,Intel研制出世界第一款商用计算机的微处理器:4004芯片,因此Intel公司完成了从单一的存储器制造商向微处理器制造商的转型。


1983年,Altera发明了世界上第一块可重复擦写编程的芯片,后被Intel收购。1984年,赛灵思发明FPGA芯片。


1978年12月5日,英国物理学家赫尔曼·豪泽(Hermann Hauser)和工程师Chris Curry,在英国剑桥创办了CPU公司(Cambridge Processing Unit),他们先是为赌博机设计控制系统。1984年英国BBC做了一款普及计算机技术的节目,希望能有配套的电脑:功能丰富但价格又不能太贵(听起来像步步高学习机的套路),豪泽就接下了这个活儿。他们使用摩托罗拉的6502芯片,这是一颗8位、主频2赫兹的CPU。乔布斯当时研发Apple I也是使用的这款CPU。后来豪泽他们想升级到16位,但是摩托罗拉公司的16位芯片太慢也太贵。他们转而向Intel公司索要80286芯片的设计资料,但是Intel判断可能会培养一个潜在竞争对手,于是就拒绝了他们,他们只能被迫自行研发。1985年,Roger Wilson和Steve Furber设计了他们自己的第一代32位、6M Hz的处理器,用它做出了一台RISC(精简指令集)的计算机,简称ARM(Acorn RISC Machine)。这就是ARM这个名字的由来。由于功耗小、价格便宜,而且和摩托罗拉设计思路有相似性,所以Apple公司研发设计牛顿PDA的时候就想到了他们。1990年11月27日,苹果公司出资150万英镑,芯片厂商VLSI出资25万英镑,他们本身则以150万英镑的知识产权和12名工程师入股,这样,ARM公司正式成立。就是因为这样奇怪的组成结构,所以ARM公司既不生产芯片也不销售芯片,它只出售芯片技术授权。


02
存 储


1801年,法国人约瑟夫·玛丽·雅卡尔发明了打孔卡用在控制织布机织出的图案。1880年代,美国人口调查局职员赫尔曼·何乐礼发明了用于人口普查数据的穿孔卡片及机器,并用于1890年美国人口普查,仅6周就完成了统计。1896年,Herman Hollerith成立了制表机公司,专门生产用于计算的打孔卡和打孔机。1911年,在金融家Charles Flint的投资并购撮合下,制表机公司、列表机公司、以及拥有存储技术的国际时代唱片公司三家合并,成为现在的IBM公司。其实这么来看,打孔卡、唱片,都算是信息存储介质。


1928年Fritz Pfleumer发明了录音磁带,可以存储模拟信号。1951年,磁带首次被用于计算机上存储数据。


1946年Jan A. Rajchman团队发明的静电记忆管Selectron Tube,这是世界上最早的随机存取数字存储器(RAM),使用静电荷存储数据在真空管内。它能够短暂存储大约4000字节。1947年Freddie Williams和Tom Kilburn发明了类似原理的威廉姆斯-基尔伯恩管(Williams–Kilburn tube)并商用。IBM的第一台商用科学计算机701就使用了72个该管做内存。701计算机也是世界上第一个能存储程序的计算机。1947年Frederick Viehe第一个申请了磁芯存储器的专利,1948年华裔王安实现了对磁芯存储器的写后读(Write-after-Read),并且于1949年申请了专利,以50万美元的价格卖给了IBM。1966年IBM Thomas J. Watson 研究中心的Robert H. Dennard发明了(动态随机存取存储器)DRAM,1968年申请了专利。1970年,Intel公司推出Intel 1103,这是第一个商用DRAM芯片。


1956年,世界上第一个硬盘驱动器出现在了IBM的RAMAC 305计算机(第一台提供随机存取数据的计算机,同时还使用了磁鼓和磁芯存储器)中。该驱动器约有两个冰箱大小,重达一吨,包含50(还是40?)个24英寸盘片,能存储5M的信息,数据传输速度10K/S。1962年,IBM发布了第一个可移动硬盘驱动器1311,它有六个14英寸的盘片,可存储2.6MB数据。1973年,IBM发明了Winchester(温氏)硬盘3340,其特点是工作时磁头悬浮在高速转动的盘片上方,而不与盘片直接接触,这便是现代硬盘的原型。1978年,IBM推出第一个RAID(独立磁盘冗余阵列)并申请技术专利。


1968年IBM的Alan Shugart领导的小组开发了只读的8英寸软盘(只能存储79.5KB的数据)


1980年日本人Fujio Masuoka为东芝工作时发明了闪存。这也为后来乔布斯研发iPod带来了灵感。


03
网 络


计算机产业晚于电信产业。早在1837年美国人萨缪尔·摩尔斯就发明了电报,并发明了电报专用编码:摩斯电码。后来1895年,意大利人马可尼首次成功收发无线电电报。而电话是1860年贝尔发明,1877年贝尔建立了电话公司,1895年,贝尔公司将其正在开发的美国全国范围的长途业务业务剥离出来,建立了一家独立的公司称为美国电话电报公司(AT&T)


其实互联网的历史比局域网的历史要长的多,根源就在于电信通信网络早于计算机网络。1958年,AT&T已经发布了世界上第一款商用的Modem:Bell 103。调制解调器的作用就是把计算机的数字信号翻译成可沿普通电话线传送的模拟信号,这些模拟信号又被电话线路另一端的另一个调制解调器接收,并译成计算机的数字信号,因此电话通信就和计算机数据传输合二为一了。不过更早的雏形还是来自IBM,在1951年帮助美国军方建设半自动防控警备系统,需要把雷达站-控制中心-指挥中心连接在一起,IBM已经发明了一整套类似装置进行联网,只不过一直运行在军方没有外泄。


互联网起源于1969年的ARPANet,我们的上网就是始于电话拨号上网的。虽然1974年已经发明了TCP/IP一套技术体系,但是直到1982年,ARPANet才全部采用TCP/IP技术。


局域网就晚很多了。


过去的人们使用计算机都在专用机房里面,在计算机跟前工作。后来发明了哑终端,其实就是一个输出显示器一个输入键盘,通过RS-232线缆连接到大型主机上。RS-232线缆标准是1970年由美国电子工业协会联合AT&T、IBM这些通信厂商、调制解调器厂商、计算机厂商一起制定的。因为涉及到信号衰减问题,所以最早线缆长度只能达到30米,后来不断改进线缆材质,最远能达到1公里长度。


后来1973年Bob Metcalfe从哈佛博士毕业后到施乐公司工作,发明了以太网,把施乐公司的40多台计算机串联在了一起。咱们现在都是百兆网卡千兆网卡,但是在1973年才2.9兆。1979年,施乐联合Intel(生产网络处理芯片)、DEC(当时很火的小型机厂商)组成产业标准联盟,制定10M以太网标准。IEEE随即接受“蓝皮书”,用作802.3标准的基础。


1979年,Bob Metcalfe觉得这是个巨大的商机,于是出来自己创办了3Com公司。1981年生产出来世界上第一张以太网卡,很快就被IBM采用作为IBM PC的组成部分。当然,计算机之间要联在一起,除了每个电脑上配备一块网卡以外,还得在以太局域网中配备集线器(Hub)设备,以便数据通过Hub进行交换,所以世界上第一台以太网络交换设备也是3Com生产的。进入百兆以太网时代后,Intel逐步重视网络芯片,大有后来居上。3Com为了应对Intel就采取开放技术授权方式,让Lucent、Broadcom、Marvell等等公司都可以生产网络芯片。但是3Com最终没有干过Intel。


提起网络,不得不提到一家公司,那就是思科。思科的创始人是莱昂纳德·波萨克,曾经不得不提到一家公司:Novell。这家公司1979年就成立了,瞎折腾。先是自己设计个人电脑,装上CP/M操作系统卖(1991年还买下了Digital Research)。后来1981年看IBM的PC上有3Com网卡和以太网联网功能,于是Novell也在自己的电脑上搞网卡并开发以太网联网功能。1982年Raymond Noorda当CEO的时候,就大力发展以太网联网功能当主打特色,也是他首先提出:网络操作系统、网络文件服务器、网络目录服务器、网络打印服务器。他还把Novell电脑改造成无盘工作站号称网络电脑。所以Noorda在业界有个名头叫:以太局域网之父。是他把这些在大型主机才应用的技术引入个人电脑领域、引入局域联网领域。当微软有这些技术的时候,那已经是1993年Windows NT发布以后,可想Novell当年的技术有多么强大。尤其在1993年Novell还收购了AT&T的Unix知识产权更加增强自己的技术实力。但是不知道Noorda动错了哪根筋,开始和微软全面竞争,1994年并购了WordPerct(类似Word)和Quatto Pro(类似EXCEL),而且1995年还把好不容易到手的Unix知识产权又卖给了SCO。2003年又回归初心到网络操作系统,并购了SUSE。


乔布斯创办的Apple公司一向喜欢自己干,从硬件到软件都自己干。后来乔布斯被赶出苹果公司,乔布斯一气之下卖掉苹果股份开始在市场上晃悠,希望寻找机会东山再起。1985年他遇到了一家创业公司NexT正在研发设计强大的图形工作站。乔布斯开始销售NexT工作站,他在思考哪儿最需要这种电脑。正好他遇到了卢卡斯,卢卡斯的电影特效制作公司工业光魔正需要这种强大功能的电脑。工业光魔是卢卡斯为了拍摄逼真的科幻电影星球大战而专门成立的电脑特效公司。1984年,约翰·拉塞特(John Lasseter)离开了工作多年的迪士尼加入了工业光魔,开始制作电脑动画。但这和工业光魔的理念不符合,卢卡斯就想卖掉,于是找到了金主乔布斯。乔布斯1986年买下了这个电脑动画部,成立了公司叫皮克斯。乔布斯就用NexT的图形工作站制作电影:玩具总动员,并获得多项奥斯卡金奖。1996年,乔布斯再次被邀请回苹果公司主持大局,乔布斯就把NexT公司卖给苹果公司,而NexT图形工作站的操作系统也是源于AT&T的商业授权的Unix版本,从此NexT操作系统成为了后来的Mac OS和iOS的基础。


07
数据库


1961年,通用电气的Charles Bachman ,开发了IDS(集成数据存储,Integrated Data Store),这是世界上第一个网状数据库,也是世界上第一个数据库。1968年, IBM在System 360 计算机上,开发了IMS,这是IBM的第一代数据库,所以也称IMS为DB1。IMS是世界上第一个层次数据库。


1970年,IBM的研究员E. F. Codd(埃德加·科德),发表了论文“A Relational Model of Data for Large Shared Data Banks”。该论文提出了关系模型,并于1981年获得ACM图灵奖。


1974年,IBM的San Jose 实验室,启动了System R 项目,其目标是论证一个全功能RDBMS的可行性。1974年,IBM的Don Chamberlin和Ray Boyce,通过 System R 项目的实践,发表了论文"SEQUEL:A Structured English Query Language",提出了 SEQUEL 语言,此即 SQL 语言的原型。该项目结束于1979年,它是SQL 语言的第一次实现,并为IBM的二代数据库DB2,打下了基础。


1973年,伯克利大学的Michael Stonebraker和EugeneWong,利用System R的公开信息,开发了Ingres(交互式图形和检索系统,INteractive Graphics REtrieval System)并开源。该项目结束于1985年,在Ingres 基础上产生了很多商业数据库软件,包括 Sybase、Microsoft SQL Server、Informix等。后来Informix被IBM收购、Sybase被SAP收购成为了HANA的基础技术。在Sybase独立的时候,微软还和Sybase一起合作研发运行在微软操作系统之上的SQLServer,但是后来微软自己掌握了数据库技术就把Sybase一脚踢开。


1977年6月,Larry Ellison阅读了Codd的那篇论文觉得这是个机会,于是与 Bob Miner、Ed Oates在硅谷共同创办了SDL(软件开发实验室,Software Development Laboratories)。1978年发布Oracle数据库1.0版本,1979年发布Oracle 2.0版本。这是世界上第一个基于SQL的商业版RDBMS。1982年,公司正式改名为Oracle。


1990年,TcX公司的的客户,要求为报表工具Unireg的API提供SQL支持。TcX的工程师Monty就自己写了一个SQL查询引擎。1995年,Michael Widenius(Monty), David Axmark and Allan Larsson,在瑞典创立了MySQL AB公司。1996年就发布了MySQL1.0。2001年,MySQL集成了Heikki Tuuri的存储引擎InnoDB,这个引擎不仅能持事务处理,并且支持行级锁,从此MySQL开始一飞冲天。


08
中间件


最早的中间件是1984年发源于贝尔实验室的Tuxedo,用于用于控制分布式事务。1992年被卖给了Novell。1995年又被卖给了BEA,BEA公司因此成立。


1989年,欧洲粒子物理实验室(CERN)的蒂姆·伯纳斯·李,他已经使用Internet两年时间了,他正在思考如何通过因特网和全球的高能物理研究领域的科学家交流科学论文和数据。于是他尝试开发了一整套程序,包含:HTML超文本语言、HTML解析工具网页浏览器、HTTP网络文本传输协议、HTML Web Server软件。1993年,伊利诺斯大学学生马克·安德列森写出了Mosaic工具并在高校间传播,1994年他觉得这是很好的商业机会,就创办了网景公司,从此拉开了世界互联网的大幕。1995年,微软也眼馋互联网热潮,于是在Mosaic的基础上开发出来IE浏览器,免费绑定在Windows95中,与网景竞争。网景公司为了竞争,于是开发了可以在各个操作系统上都能运行的浏览器版本。


伊利诺伊斯大学还有一伙计算机爱好者,他们组成了一个叫Apache的自由软件联盟,开发了Web Server并把它开源,这就是Apache Web Server。有家创业公司叫WebLogic,在开发商用Web Server,1996年被BEA收购。


当时的HTML都是静态文字,网景公司为了竞争,想做出动态的技术来吸引用户。谁有可以支持各个操作系统并且可以动态执行的技术呢?


1991年,Sun公司想开拓智能家电设备市场。于是成立了一个叫做Green的小组,他们一开始为了兼容层出不穷的消费家电用C++写,但是C++写出的代码太庞大,而且C++代码由于开发人员水平参差不齐导致有的代码很容易崩溃掉,这在大多数是家庭主妇使用的家用电器上面是不可饶恕的,所以他们开始创造一种叫做Java的虚拟机和开发语言,既可以兼容各种层出不穷的消费家电,而且即使是烂程序员写的代码也不容易崩溃,因为有虚拟机的保护。但是这个东西一直未能打开市场,他们面临着被Sun公司裁掉的风险。1996年,互联网如日中天,他们就也想进入互联网市场。于是他们找到网景公司,声称他们满足网景公司的需求,并且愿意免费合作。于是1997年,Sum发布了JSP技术在服务器端执行,网景公司的工程师Brendan Eich发明了JavaScript在浏览器客户端执行。


1997年,担任IBM软件解决方案总经理Mills看到了Sun公司在互联网的举措,也在思考IBM如何进入这个新兴爆发的互联网软件市场。这些创业的互联网公司,用x86组装白牌服务器(1998年Intel发布用于服务器的CPU至强品牌)、用开源的Linux操作系统、用开源的Apache Web Server、用开源的Java开发语言、用开源的MySQL数据库。


当时,IBM决定在开源的Apache基础上开发出IBM的商用版本,并且也迅速跟进J2EE标准,由位于北卡罗来纳州罗利的十几个 IBM 开发人员在 Chris Wicher 和 Sue Wallenborn 的带领下开发,他们的进展非常快,在短短四个月内就开发出了第一个版本,并在三个月后推出了第二个版本,这就是后来的WebSphere。


1998年Sun想再次提高JSP技术的竞争力,而IBM也想继续增强WebSphere产品商业竞争力,于是两家一拍即合,又拉了一些公司做联盟,联合制定了J2EE标准,Weblogic也迅速跟进。


其实在1989年,Sun和IBM就混在一起搞事了。他们当时还组建了一个联盟,叫OMG,专门针对分布式计算进行标准规范制定。像UML、CORBA、MOF元数据规范、XML、BEPL业务流程描述语言,这些东西都是这个组织搞的。但是CORBA被制定的太复杂了,一直难以实现。所以,1998年他们才又联合搞了J2EE,其实J2EE思想就是来自CORBA技术标准族。后来IBM在WebService技术基础上又搞了SOA。


09
编程语言


1953年,IBM发布650大型主机时,研发出来汇编语言,使人类终于告别了直接用最原始的01010编写程序的历史。


一开始计算机很昂贵也很复杂,主要用于科学研究和军事。所以,1957年,IBM发明了Fortran语言,主要目的用于科学计算。而与此同时,IBM还发明了Fortran 编译器,这是世界上第一个编译器。


在1953年,安达信会计师事务所就为帮助通用电气公司提高薪资处理效率而安装了美国第一台商用电脑,从此开创了企业信息化的时代。COBOL开发语言于1958年产生。现在,全球很多金融机构,还有很多COBOL代码仍然在运行。还有个商业业务逻辑开发语言我们也介绍一下,那就是SAP公司的ABAP。ABAP最初是用于报表开发的,是随着1979年R/2套件开发而逐步产生的。你可以这么理解,ABAP一开始就好像是EXCEL表格的函数和VBA宏脚本语言。这套语言在1983年发布。要知道,VBA宏脚本语言,是微软1991年才发明的,到了1993年才随着Excel5.0的发布而发布。


还有一个古老的专用开发语言也需要介绍一下,那就是1958年产生的人工智能专用开发语言LISP,而发明人就是曾联合发明BASIC编程语言的麦卡锡。


其实还有一个专用的开发语言要说一下,那就是IBM为了做数据库处理而发明的SQL语言。


1972年,贝尔实验室的 D.M.Ritchie为了开发Unix,特意发明了C语言。这是历史上第一个人类可流畅使用的通用编程语言。


纵观整个计算机行当,是IBM创造了这个产业,带出了一众Intel芯片、3Com网卡、微软操作系统、Oracle数据库、Sun中间件、SAP应用软件这些小弟。

---------
长按下图二维码即可进【ToB行业交流群】



推荐阅读



点击图片即可阅读


转载/投稿/内容合作/寻求报道

请联系微信:qifuxiaozhushou3W


觉得有价值,点个“在看”,和朋友们一起成长