故事仍在继续

1623年,Wilhelm Schickard尝试设计了最早的可以自动完成计算的机器;

1642年,Blaise Pascal制造了第一台可以自动进行加减运算的机器,减法的实现是利用补数的办法;

1674年到1720年之间,Gottfried Wilhelm Leibniz制造了可以自动进行加减乘除运算的机器,通过重复的加减来实现乘除运算,另外,Gottfried Wilhelm Leibniz还提出了二进制;

1847年前后,Charles Babbage设计了具有运算单元、控制单元、存储器、输入设备、输出设备,可以程序控制的计算机;

1835年,Jospeh Henry发明了继电器,组成电子计算机的基础零件;

1847年,George Boole提出了布尔代数;

1903年,Lee De Forest发明了真空管,组成电子计算机的基础零件;

1936年,Alan Turing设计了输入按照规则改变内部状态并输出的图灵机;

1937年,Claude Elwood Shannon发现了电路与计算的关系:利用基础零件组成电路实现布尔代数,布尔代数组合完成二进制运算,随后,George Robert Stibitz制造了第一个可以进行一位加法运算的电子计算机;

1939年到1946年,大量数字电子计算机出现,电路组合实现加法,利用补数的加法实现减法,重复加减实现乘除,几乎都具有具有运算单元、控制单元、存储器、输入设备、输出设备的结构,有的还具有程序控制;

1945年,John von Neumann在“First Draft of a Report on the EDVAC”里确定了数字电子计算机的结构并提出了存储程序的概念,随后,大量存储程序计算机出现;

1947年到1951年,两种不同类型的晶体管由William Shockley,John Bardeen和Walter Houser Brattain发明,成为新的组成电子计算机的基础零件构成运算单元和控制单元;

1953年,磁芯存储器诞生,成为新的主存储器,键盘和阴极射线管开始替代打孔的纸带、卡片、胶片等成为数字电子计算机的输入设备和输出设备,而IBM推出的点阵打印机提供了新的输出设备;

1957年、1958年、1959年,FORTRAN、LISP、COBOL相继诞生,更接近人类思维的程序设计语言开始替代使用助记符编写程序;

1958年和1959年,Jack Kilby和Robert Noyce先后发明了集成电路,半导体存储器诞生,而磁盘也开始成为辅助存储器;

1958年到1960年,ALGOL诞生,1964年和1970年,BASIC和PASCAL诞生,结构化程序设计语言开始流行;

1969年,ARPANET组建;

1970年,UNIX操作系统诞生,1972年,C语言诞生;

1971年,4004诞生,中央处理器启动;

1976年,Apple I开始销售,1977年,Apple II开始销售,个人计算机时代来临;

1981年,IBM 5150开始销售,Intel的中央处理器加Microsoft的操作系统构成的IBM PC时代开始;

1983年,Apple Lisa发布,1984年,Macintosh发布,1985年,Windows 1.0发布,计算机出现了图形用户界面;

1991年,Linux发布,计算机在商业之外有了一个叫做开源的领域;

1991年,World Wide Web诞生,Internet开始了迅速的发展;

1995年,Java语言带来了虚拟机概念;

1996年,Google成立,Internet的信息更加透明;

2007年,iPhone发布,计算机开始进入生活中的各个领域;

……

iPhone

1983年,Steve Jobs邀请当时在Pepsi Cola的John Sculley到Apple担任CEO,他曾对John Sculley说过,“Do you want to sell sugar water for the rest of your life, or do you want to come with me and change the world?”。

不过就在1985年,Steve Jobs却和John Sculley发生了权力斗争,Steve Jobs的古怪和倔强让董事会站在John Sculley这边,Steve Jobs被出去了Macintosh的领导头衔。随后,Steve Jobs从Apple辞职,并成立了NeXT。NeXT是一家生产工作站计算机的公司,虽然NeXT并没有能够获得太大的成功,不过在此期间开发的一些技术在以后却是很有用的。

1986年,Steve Jobs还收购了Lucasfilm的计算机图像部门,并借此创办了Pixar。随后,Steve Jobs作为执行制片人制作了“Toy Story”并大受欢迎,接下来,Pixar制作了大量的计算机图像的电影并获得成功。2006年,Disney收购Pixar,Steve Jobs成为了Disney最大的个人股东。

1996年,Apple的个人计算机销量逐年降低的最低谷,已经到了快要破产的地步。就在这时,Apple收购了NeXT,Steve Jobs回归Apple。回到Apple之后,Steve Jobs为Apple带来了NeXT的操作系统等技术,并从Microsoft手中获得了一笔算得上救命钱的资金(这笔资金被看作当年Microsoft抄袭苹果的图形用户界面的操作系统的补偿)。很快,iMac发布,市场销量还算不错,Apple开始恢复正常。接着,iPod发布,加上配套的iTunes Store,随身音乐播放器从Sony的walkman的模拟设备进化到数字设备,并开始悄悄地改变唱片产业。历经沧桑的Steve Jobs为Apple继续带来创新,接下来的是——

2007年,Steve Jobs在Macworld上为大家带来了iPhone。Symbian,Palm,Windows Mobile等手机操作系统开始将个人计算机扩展到了移动设备上,不过它们却受到性能和操作性等影响,并没能展现出类似个人计算机的特性。而具有高分辨率屏幕,触摸屏操作,以及强劲的运算能力的iPhone彻底让个人计算机来到每一个人的手上。iPhone大受欢迎,紧接着iPad发布,同样大卖,Apple成为市值最高的公司,Steve Jobs也达到了人生的巅峰。2003年,Steve Jobs被诊断出胰腺癌,虽然曾一度手术成功,但后来发现转移到肝脏,经过大量的治疗之后,2011年,Steve Jobs去世,更多的创新随他而去……

在iPhone之后,Android和Windows Phone相继问世。而Apple TV和Google TV,以及XBOX开始将计算机带到客厅,更多的芯片开始被嵌入到家用电器中,计算机开始进入新的时代……

Google

Internet将世界各地的个人计算机和服务器连接起来通过服务器为Internet提供了信息和服务。由于Internet的迅速发展,通过world wide web提供信息的网站及其信息迅速增长,要从Internet上获取想要的信息越来越难。

Larry Page,1973年3月26日出生于美国的Lansing。Larry Page的父母都是Michigan State University的计算机科学教授,他父亲更被认为是早期计算机科学和人工智能的先驱。Larry Page在University of Michigan获得学士学位,在Stanford University获得硕士学位,随后,在Stanford University开始了博士学位的学习。

Sergey Brin,1973年8月21日出生于苏联的Moscow。6岁时,Sergey Brin随父母移民到美国。1993年,Sergey Brin在University of Maryland获得学士学位,随后进入Stanford University开始硕士学位和博士学位学习。

1995年,Larry Page和Sergey Brin相遇,两人都对于Internet的信息获取很感兴趣,虽然一开始两人对很多课题的看法并不相同,不过相处之后还是成为了朋友,并共同开发搜索引擎,1996年,最早版本的搜索引擎在Stanford University的网站上出现,并在Stanford University的校园里大受欢迎。随后,两人停止了博士学位的学习,购买了服务器,租用了一个车库,并从Sun Microsystems的合作创始人Andy Bechtolsheim那里获得了10万美金,就这样,Google成立。

Google通过遍历Internet上的网站,并对网站的信息进行索引和排名,由此为Internet用户提供搜索功能。Google的出现让Internet上的信息随手可得,世界更近了一些。

Java

C语言和后来的C++语言编写的代码在执行之前需要针对不同的目标平台编译成对应的机器语言代码,要在多个具有不同指令集的机器上发布同一个程序,就需要进行多次编译。

1982年2月24日,Sun Microsystems成立。作为服务器硬件,操作系统,以及相关技术的供应商,Sun Microsystems伴随着Internet一起成长。Sun Microsystems开发了用于服务器的中央处理器SPARC,基于Unix的Solaris操作系统,MySQL,以及Java。

James Gosling,1955年5月19日出生于加拿大的Calgary。1977年,James Gosling在University of Calgary大学获得硕士学位,1983年,在Carnegie Mellon University获得博士学位,随后加入Sun Microsystems。

1990年,Sun Microsystems开始设计一个替代C和C++的程序设计语言。该项目最开始由Patrick Naughton带领,随后James Gosling和Mike Sheridan加入,这种程序设计语言被称为Oak。James Gosling对这种语言进行了最初的设计,以及最初的编译器和虚拟机。后来,由于Oak已被一家显卡制造商注册,所以,这种语言最终被称为Java。Java是一种面向对象的程序设计语言,使用垃圾回收进行内存管理,具有异常处理功能,支持多线程。Java引入了虚拟机的概念,Java代码编写完成之后,编译器将其编译成一种被称为字节码的中间代码,Java程序被安装到不同设备上之后,再由该设备上的Java虚拟机程序对字节代码进行解释并执行。相比编译型语言,无需对不同设备进行多次编译,相对解释性语言,执行时的速度更快。2002年,Microsoft发布了C#,一种类似Java的程序设计语言。

Internet

1981年,National Science Foundation建立Computer Science Network(即NSFNET),ARPARNET得以扩展。随后,一些商业接入提供商开始出现。1982年,TCP/IP协议制定,同时,一个全球互联网的概念被提出,这就是Internet。1990年,ARPARNET宣告结束,1995年NSFNET宣告结束。由于政治因素远离互联网,Internet开始在全球迅速发展起来,介入的计算机不断增加,通讯速度不断提高。基于不同协议的服务也开始出现,电子邮箱、语音通讯、视频通讯等等,这其中还包括网页浏览。

Tim Berners Lee,1955年6月8日出生于英国的London。1989年,Tim Berners Lee撰写了“a large hypertext database with typed links”提出了World Wide Web,不过没有太大的影响。随后,Tim Berners Lee完成了概念实现所需的HTTP协议(HyperText Transfer Protocol)、HTML页面(HyperText Markup Language)、网页浏览器、服务器。1991年8月6日,Tim Berners Lee在alt.hypertext新闻组发布了World Wide Web的摘要,此后,World Wide Web逐渐流行开来。

Linux

Richard Stallman,1953年3月16日出生于美国的New York。Richard Stallman第一次接触计算机是在IBM New York Scientific Center,他受雇使用Fortran编写数值分析程序。Richard Stallman使用两周的时间就完成了任务,随后,用APL编写了文本编辑器。中学毕业后的暑假,Richard Stallman还为IBM 360编写了PL/I的预处理器。他在Harvard University就读时因为数学成绩优秀而出名。1971年,Richard Stallman在MIT Artificial Intelligence Laboratory担任程序员,同时,他也成为计算机爱好者知名人物。1974年,他从Harvard University毕业并获得学士学位。1983年,Richard Stallman通过ARPANET的邮件列表宣布了GNU操作系统,希望创造一个从操作系统到应用程序的免费开源软件系统。1984年,Richard Stallman离开MIT,专心从事GNU。1985年,Richard Stallman发表了GNU宣言,提出了自由软件的概念。随后,他创办了Free Software Foundation,并提出了GNU General Public License来规定自由软件授予的权限。1990年,在完成了编译器gcc、调试程序gdb等应用程序之后,开始了操作系统GNU Hurd的开发,不过进展缓慢。

Linus Torvalds,1969年12月28日出生于芬兰的Helsinki。1988年到1996年,Linus Torvalds都在University of Helsinki学习。1991年,Linus Torvalds开始参考Minix编写自己的操作系统,并将其命名为Linux,8月25日,他在Usenet的comp.os.minix新闻组里发布了关于Linux的消息,开源爱好者们开始参与Linux的开发,最终,Linux替代野心勃勃的GNU Hurd成为了开源软件的标准操作系统。

图形用户界面

从Whirlwind开始,计算机逐渐开始配备了显示器和键盘,而对计算机的操作通常是以命令行的形式进行的。1963年,Stanford Research Institute的Douglas Engelbart创造了基于文本的超链接方式,通过使用鼠标来控制屏幕上的指针移动并点击超链接文本打开新的文本。1972年,Butler Lampson在他的备忘录里设想了一种计算机的图形用户界面。1973年,由Chuck Thacker详细设计,Douglas Engelbart开发完成Xerox Alto,一台具有图形用户界面的计算机。

Xerox Alto并没有商业化销售,只是提供给学校和研究机构使用。Steve Jobs在参观Xerox发现了Xerox Alto图形用户界面在个人计算机市场的潜力,于是开始了Apple Lisa项目,开发Apple的第一台具有图形用户界面的计算机。Apple Lisa几乎就是完全参考Xerox Alto而来的,整个开发团队曾到Xerox了解过Xerox Alto的图形用户界面。Steve Jobs原本对Apple Lisa项目项目充满期望,不过因为公司内部的人事原因,他退出了Apple Lisa项目,并组织成员开辟了新的Macintosh项目,另一台图形用户界面的计算机。1983年,Apple发布Apple Lisa,虽然其具有图形用户界面,但运行并不流畅,而且价格昂贵,所以销售情况一般。

1984年,Macintosh发布,更流畅的运行和更适合的价格让它成为了成功的具有图形用户界面的产品。

Macintosh的成功刺激了Bill Gates,他也看到了图形用户界面的操作系统是计算机发展的方向,不过由于当时Microsoft的技术实力并不强,无法独立完成这样的操作系统的开发。精明的Bill Gates以为Macintosh开发office等软件的形式找到了Steve Jobs,借此获取了Macintosh的技术细节。1985年,Windows 1.0发布,Microsoft成功开启了自己的视窗时代。

这段故事确实挺讽刺的,标榜创新的Apple的图形用户界面是复刻自Xerox Alto的,而标榜技术的Microsoft的图形用户界面是复刻自Apple的……

随着图形用户界面的诞生,鼠标开始成为标准的输入设备,而显示器性能也逐渐提升。由于图形显示会占用大量的运算和存储,所以在中央处理器之外,开始出现用于绘图的显示芯片。1989年,Creative Labs的Sound Blaster Card,第一款用于音频解码的音频芯片诞生。1979年,Philips和Sony共同开发了光盘(Compact Disc),一种新的辅助存储。

IBM PC

Altair 8800,Apple II,以及Commodore PET和TRS-80s热销之后,原本对个人计算机并不看好的IBM才发现其市场的广阔。通常,IBM的一个产品的开发周期是4年,不过面对发展迅速的个人计算机市场,IBM不得不加快速度,Don Estridge带领的12人团队在一年之内完成了个人计算机的设计。1981年,第一台IBM PC 5150诞生。

在IBM的开发过程中,为了能让软件开发者和周边配件开发者能快速的为IBM的个人计算机提供配套,IBM公开了包括电路图在内的详细设计,这让大量原本不具备个人计算机设计能力的公司得以制造自己品牌的个人计算机,而这些个人计算机的结构基本上都是按照IBM PC的设计实现的,因此,他们彼此相互兼容,虽然这让IBM失去了独占市场的机会,但却间接为个人计算机有一个统一的环境提供了帮助。除此之外,原本IBM计算机的所有配件包括操作系统都是自己开发的,不过为了更快的开发速度,Don Estridge团队决定采用市面上成熟的配件产品,由于大量的IBM兼容机的存在,IBM PC选择的的配件也就有了统治市场的大好机会,在Andrew Grove的努力下,Intel 8080成为了IBM PC的中央处理器的独家供应商,而操作系统则是当时成立还不久的Microsoft还未开发出来的MS DOS。

Bill Gates,1955年10月28日出生于美国的seattle。Bill Gates的父亲是一个有名的律师,而他的母亲也是First Interstate BancSystem和United Way的董事会成员,而他的祖父是national bank的主席。Bill Gates在13岁的时候进入Lakeside School,在这里,他接触到了General Electric的计算机,使用BASIC进行编程,他的第一个程序是tic-tac-toe游戏。随后,Bill Gates还是用过DEC的PDP-10,通过替拥有PDP-10的Computer Center Corporation给计算机寻找bug而获得使用计算机的时间。1973年,Bill Gates进入Harvard College,在这里,他认识了Steve Ballmer。

Paul Allen,1953年1月21日出生于美国的seattle。Paul Allen和Bill Gates是Lakeside School的同学,也是好友。

1975年,Bill Gates在看到Popular Electronics上的Altair 8800时,认为这是一个很好的机遇,于是他马上联系Paul Allen,在告诉父母自己决定退学创办软件公司的决定之后得到了父母的资助。就这样,Microsoft成立了。Bill Gates很快就联系上了Micro Instrumentation and Telemetry Systems,并告诉对方自己有可运行于Altair 8800的BASIC解释器。其实,Bill Gates并没有什么BASIC编译程序,他只是想试探一下,不过Ed Roberts却有兴趣看看。很快,Bill Gates和Paul Allen在几周之后实现了Altair的模拟器,并制作了BASIC编译程序。Microsoft的BASIC编译程序很受欢迎,不过却没能从计算机爱好者的大量拷贝中挣到更多的钱,为此,Bill Gates在MITS的通讯里写了“Open Letter to Hobbyists”,他坚持认为计算机软件是需要付费的产品。

1980年,IBM主动找到Bill Gates希望Microsoft为其开发BASIC编译程序,在交谈中,IBM的代表提到他们需要一个操作系统时,Bill Gates答复自己有一个Disk Operating System,和之前一样,其实他什么也没有。和之前不同的是,操作系统却不是几周就能开发完成的,这时,Paul Allen建议购买Tim Paterson编写的Quick and Dirty Operating System,交易顺利完成。再将QDOS简单的改造之后,MS DOS正式提交给了IBM, 并顺利成为IBM PC的操作系统,就这样,年轻的Bill Gates和Paul Allen管理的年轻的Microsft,和Intel一起成为了个人计算机时代的统治者,后来,他们被一起称为wintel,这甚至成为了个人计算机时代的象征。

Apple

Steve Jobs,1955年2月24日出生于美国的San Francisco。Steve Jobs的亲生父母在读大学时生下Steve Jobs的,Paul Jobs和Clara Jobs收养了他。小时候,Steve Jobs的养父就教授了他一些电子知识。Steve Jobs通过邻居Bill Fernandez认识了Steve Wozniak。Steve Jobs还曾在读书时到Hewlett-Packard Company做过兼职,Steve Wozniak当时已经在那里工作。1972年,Steve Jobs进入Reed College学习。Reed College的学费非常昂贵,但Steve Jobs的养父母还是倾尽一切来满足Steve Jobs。不过,Steve Jobs却在一个学期后退学了,退学之后,Steve Jobs依然留在学校上课,住在朋友寝室的地板上,靠捡可乐瓶糊口,周末还到当地的寺庙吃免费餐。

1974年,Steve Jobs进入了Nolan Bushnell创办的游戏公司Atari工作。不过很快,Steve Jobs就到印度去进行心灵修行。回到Atari之后,Steve Jobs接受了Nolan Bushnell交给的游戏机电路板的设计任务,不过,他并没有能力完成,所以找来了Steve Wozniak帮忙,游戏开发完成之后,Steve Jobs拿到了不少的奖金,却只给了Steve Wozniak很少一部分。

Steve Wozniak,1950年8月15日出生于美国的San Jose。

1976年,Steve Jobs,Steve Wozniak,以及Ronald Wayne(不过Ronald Wayne很快就退出了公司)在Steve Jobs家的车库里成立了Apple Computer。而Steve Wozniak也完成了Apple I从电路到操作系统的制作。Apple I配备了1MHZ的处理芯片和4KB的主存储器,并以666.66美元的价格进行销售。相比其他的个人计算机都只是单独的电路板需要自行扩充电源和连接线路,Apple I已经是一个完整的计算机,只需要添加键盘和廉价的显示器就可以工作,而且即使比起Altair的开关控制和信号灯输出来,也更加优秀,所以销量还算不错。

1977年,Steve Wozniak设计的Apple II诞生,相比Apple I,性能有了很大的提升,还配置了显示器和键盘,而且其外型那个时代可以说是艺术品一样的产品,因此,Apple II成为了个人计算机早期销量最高的产品之一。

中央处理器

Gordon Moore,1929年2月3日出生于美国的San Francisco。1950年,Gordon Moore在University of California, Berkeley获得化学学士学位,1954年,在California Institute of Technology获得物理学博士。直到1956年,Gordon Moore都在Johns Hopkins University的应用物理实验室进行博士后工作。随后,Gordon Moore进入Beckman Instruments的Shockley Semiconductor Laboratory,不过很快就随William Shockley离开并一起成立了Fairchild Semiconductor。1968年,Gordon Moore和Robert Noyce一起离开Fairchild Semiconductor,并创办了Intel Corporation。

Andrew Grove,原名Andras Istvan Grof,1936年9月2日出生于匈牙利的Budapest。4岁的时候,Andrew Grove患上猩红热,差点丧命并导致听力变差。纳粹德国攻占匈牙利时,Andrew Grove的母亲更改了他们的犹太身份,并得到朋友的保护,因此躲过了大屠杀,不过他的母亲却被抓到劳工营。二战结束后,Andrew Grove一家团聚。1956年,匈牙利革命,20岁的Andrew Grove逃过边境到达奥地利,并在1957年得以到达美国,从此,他改名为Andrew Grove。

1960年,Andrew Grove在City College of New York获得化学工程的学士学位,1963年,获得University of California, Berkeley的博士学位。毕业后,Andrew Grove进入Fairchild Semiconductor工作。随后,Andrew Grove跟随Gordon Moore和Robert Noyce创办了Intel Corporation。

早期的Intel主要生产其发明的DRAM存储器,不过,随着日本厂商开始以很低的价格销售这种存储器,Intel的产品销售停滞,危机笼罩着Intel,不过机遇也在前面等待着他们。

1971年,日本的计算器生产商Busicom的Masatoshi Shima为他们的计算器产品141-PF设计专用的芯片组,随后,Busicom委托Intel进行开发。Intel的工程师Federico Faggin和Ted Hoff在接受之后,认为其原始设计较复杂,因此,决定采用非标准的DIP的16针引脚的封装,并简化了指令集。Intel将其作为MCS-4系列产品的一个成员命名为4004。4004采用4位地址总线和4位数据总线,使用了2300个晶体管,最大时钟频率是640KHZ,每秒执行46300到92600条指令,指令集包含46条指令,包含16个4位寄存器。

4004成为第一个将控制单元和运算单元集成并封装到芯片中的中央处理器,随后,1972年,8008诞生,1973年,4040诞生,1974年,8080诞生,1978年,8086开启X86架构……Intel的中央处理器开始带领Intel走向成功,也开始引领数字电子计算机新的革命。

1973年,IBM推出代号“Winchester”的硬盘,正式确立了硬盘的架构,也开始让硬盘正式成为辅助存储器流行起来。

1969年,Xerox的Gary Starkweather发明了激光打印机,开始取代之前的点阵打印机。

至此,数字电子计算机也将开始新的时代……

20世纪70年代,以Homebrew Computer Club为代表的计算机爱好者们开始动手制造自己的数字电子计算机,这就是计算机普及的开始。1975年,Ed Roberts和Forrest Mims创办的Micro Instrumentation and Telemetry Systems使用Intel 8080制造了Altair 8800,他们在Popular Electronics和Radio-Electronics等计算机爱好者杂志上面刊登广告,并通过邮件进行销售。原本只希望能够销售几百台,不过在一个月之内就卖出了几千台这种手动组装的甚至并不完整的计算机。后来Micro Instrumentation and Telemetry Systems并没能有更大的发展,不过Altair 8800却强烈刺激了Bill Gates和Steve Jobs这样的年轻人,影响了数字电子计算机接下来的发展。也许历史始终都会按照规律发展下去,不过,在这里,Altair 8800成为了新的历史转折的标志。

个人计算机时代到来!