【创世纪厅】
1949年,EDSAC正式问世。由Maurice Wilkes主导开发,面向大型机平台用户。
世界上首台实用的存储程序计算机,开启了软件存储时代。
技术特色:存储程序、先驱、教育。
影响力评估:技术维度 10/10,商业维度 7/10,文化维度 6/10,用户维度 4/10。
作为创世纪厅的经典代表,EDSAC在软件发展史上留下了深刻的印记。
世界上首台实用的存储程序计算机,开启了软件存储时代。
【创世纪厅】
1949年,EDSAC正式问世。由Maurice Wilkes主导开发,面向大型机平台用户。
世界上首台实用的存储程序计算机,开启了软件存储时代。
技术特色:存储程序、先驱、教育。
影响力评估:技术维度 10/10,商业维度 7/10,文化维度 6/10,用户维度 4/10。
作为创世纪厅的经典代表,EDSAC在软件发展史上留下了深刻的印记。
1949年5月6日,剑桥大学数学实验室的地下室里,一台庞然大物发出了第一声嗡鸣。这台名为EDSAC的机器,其全称是“电子延迟存储自动计算器”(Electronic Delay Storage Automatic Calculator),但它的意义远超一个计算工具。它不仅是世界上首台实用的存储程序计算机,更是一个划时代的象征:软件,从此从硬件的桎梏中独立出来,开启了一个全新的时代。要理解EDSAC的伟大,我们得先回到那个技术与思想激烈碰撞的年代。
二战结束后,世界沉浸在重建的渴望中,而计算技术正经历一场静默的革命。战前,计算主要依赖机械计算器或手动插线板——比如哈佛大学的马克一号(Harvard Mark I),它用继电器和齿轮进行运算,程序通过纸带输入,但每次修改都需要物理重连。更先进的ENIAC(电子数字积分计算器)于1946年诞生,它用电子管实现了惊人的速度,但编程却是一场噩梦:操作员需要像接线员一样,用数百根电缆和开关手动配置,完成一个简单程序往往需要数天。这种“硬连线”模式,让计算能力被硬件设计牢牢锁死。
与此同时,一位匈牙利裔数学家约翰·冯·诺依曼(John von Neumann)正在普林斯顿高等研究院勾勒一个革命性的蓝图。1945年,他发表了一份名为《第一份草案》(First Draft of a Report on the EDVAC)的报告,提出了一种新架构:将程序和数据存储在同一个可寻址的存储器中,计算机通过读取存储中的指令来执行操作。这就是后来被称为“冯·诺依曼架构”的核心理念——存储程序概念。这个想法并非冯·诺依曼独创,它汲取了ENIAC设计者埃克特(J. Presper Eckert)和莫奇利(John Mauchly)的早期思路,但冯·诺依曼以数学家的严谨将其系统化。然而,理论是一回事,实现是另一回事。EDVAC(电子离散变量自动计算机)项目在宾夕法尼亚大学进展缓慢,到1949年仍未完工。世界迫切需要一台真正能运行的存储程序计算机。
正是在这个空档期,剑桥大学的莫里斯·威尔克斯(Maurice Wilkes)站了出来。威尔克斯生于1913年,是剑桥大学数学实验室的主任,一位兼具理论功底与实践热情的工程师。1946年,他参加了摩尔学院举办的“电子数字计算机设计”讲座,那里汇集了ENIAC和EDVAC的核心设计者。威尔克斯被冯·诺依曼的理念深深震撼,他回忆说:“那一刻,我看到未来的道路。”但不同于美国同行们沉浸在学术讨论中,威尔克决定立刻动手。他深知,理论再完美,没有一台能运行的机器,一切只是纸上谈兵。他回到剑桥,说服大学和英国政府支持一个项目:建造一台使用水银延迟线作为存储器的计算机,目标是在三年内实现。
EDSAC的建造始于1947年,资金来自英国国家物理实验室和剑桥大学。团队规模极小,核心成员只有威尔克斯、工程师比尔·雷恩(Bill Renwick)和几位研究生。他们面临的首要挑战是存储器。冯·诺依曼架构的灵魂在于“存储”,但当时可用的存储技术极其有限。磁鼓存储器速度太慢,阴极射线管存储器(威廉姆斯管)尚不稳定。威尔克斯选择了水银延迟线——一种二战期间雷达技术中用于信号延迟的装置。原理很简单:电脉冲通过水银柱传播,速度约为声速的1/1500,在另一端被接收并重新放大,形成循环存储。每条延迟线可以存储约16个或32个32位的字(word),整台机器共使用了约40条延迟线,总存储容量仅为1024个字(约4KB)。这个数字在今天看来微不足道,但在当时已是巨大的工程成就。水银延迟线对环境温度极其敏感,必须用恒温箱精确控制,否则数据会漂移丢失。威尔克斯的团队甚至发明了“水银延迟线恒温箱”的专利,确保机器稳定运行。
EDSAC的硬件设计也充满巧思。它使用约3000个真空管,功耗约15千瓦,重约7吨。输入输出采用五孔纸带(类似电传打字机),输出则通过电传打印机或阴极射线管显示器。核心运算单元是“累加器”(accumulator),能执行加法、减法和乘法指令。但最关键的创新在于“指令集”的设计。EDSAC的指令长度为17位,由5位操作码和12位地址码组成,支持加载、存储、跳转、条件分支等基本操作。威尔克斯从冯·诺依曼的草案中汲取了灵感,但做了许多实用化调整。例如,他引入了“初始指令”(Initial Orders)——一个存储在只读存储器中的小型引导程序,用于将纸带上的程序加载到内存。这相当于现代操作系统的引导加载器(bootloader),让EDSAC能在几秒钟内开始运行新程序,而非像ENIAC那样需要数小时重连。
1949年5月6日,EDSAC首次成功运行了一个程序:计算平方数表。程序由纸带输入,机器用了几秒钟打印出结果。在场的科学家们报以掌声,但威尔克斯后来回忆,那一刻他感到的更多是如释重负而非狂喜:“我们终于证明了存储程序的概念是可行的。”然而,真正让EDSAC名垂青史的,是它运行了第一个“计算机游戏”——一个模拟井字棋(Tic-Tac-Toe)的程序。这个程序由威尔克斯的研究生A.S.道格拉斯(A.S. Douglas)编写,用于演示机器的交互能力。程序通过阴极射线管显示棋盘,玩家用旋钮输入位置,机器则计算最佳落子。虽然简陋到只有几个光点,但它标志着软件从硬件中独立出来——程序不再是硬连线的物理状态,而是存储在延迟线中的抽象符号。道格拉斯后来在博士论文中详细描述了这一程序,它被公认为人类历史上第一个视频游戏。
EDSAC的软件生态发展同样令人惊叹。当时,编程没有任何现成工具。威尔克斯形容为“在黑暗中摸索”——程序员需要直接编写机器码,用纸带打孔,然后祈祷机器能正确执行。每个程序都是独一无二的,重复劳动极其普遍。威尔克斯敏锐地意识到,必须建立“子程序库”(subroutine library)。他组织团队编写了通用数学函数(如正弦、余弦、开平方、矩阵运算)的子程序,并将它们存储在纸带上。程序员只需调用这些子程序,就像现代开发中调用库函数一样。1949年,威尔克斯还发明了“汇编语言”的雏形——他设计了一个称为“初始指令”的加载器,允许程序员用助符如“LDA”表示加载)代替二进制代码,然后由机器自动翻译。这是软件工程的第一次飞跃:代码开始变得可读、可复用、可维护。威尔克斯在1951年出版的《数字计算机程序的准备》(The Preparation of Programs for an Electronic Digital Computer)一书中,系统总结了这些实践,这本书被公认为世界上第一本编程教科书。
EDSAC的商业影响远超剑桥校园。1950年代,英国政府和企业开始关注这个奇迹。英国国家物理实验室的Pilot ACE、曼彻斯特大学的Mark I等机器都借鉴了EDSAC的设计。更深远的是,EDSAC的成功直接影响了美国巨头IBM。1952年,IBM推出了IBM 701,这是该公司第一台存储程序计算机,其指令集和架构明显带有EDSAC的痕迹。IBM的工程师曾访问剑桥,详细研究了EDSAC的设计。事实上,冯·诺依曼架构之所以能成为行业标准,EDSAC的实用化验证功不可没。到1950年代中期,几乎所有商用计算机都采用了存储程序概念,插线板编程彻底成为历史。
然而,EDSAC的辉煌并非一帆风顺。水银延迟线的可靠性始终是个问题。机器经常因为温度波动、真空管老化或纸带打孔错误而崩溃。威尔克斯的团队不得不24小时轮流值班,用示波器监测延迟线中的信号。有一次,一条延迟线中的水银泄漏,导致整个实验室漫着有毒汞蒸气,团队不得不紧急疏散。另一个趣闻是:1950年,一位研究生在调试程序时,发现计算结果总是不对,最后发现是机器旁边的一盏台灯发热,影响了附近延迟线的温度。从此,EDSAC的机房被要求保持恒温、恒湿,甚至禁止携带热饮进入。
EDSAC的寿命长达九年,直到1958年才退役。在此期间,它完成了超过1000个科学计算任务,包括核物理模拟、天气预报、空气动力学计算,甚至用于破解密码。1953年,剑桥大学用它计算了π的小数点后2000位,验证了当时最精确的近似值。这台机器还培养了一代计算机科学家:威尔克斯的学生中,有人后来设计了EDVAC的改进版,有人参与了曼彻斯特大学的Atlas计算机项目,还有人加入了IBM和DEC。威尔克斯本人则在1967年获得了图灵奖,以表彰他对存储程序计算机和软件工程的贡献。
从文化遗产的角度看,EDSAC的遗产远不止一台机器。它证明了“软件”是一个独立的概念,可以像硬件一样被设计、测试和优化。它催生了子程序库、汇编语言、引导加载器,这些今天被视为理所当然的工具,在1949年都是革命性的突破。它还开启了“人机交互”的早期探索——那个井字棋程序,虽然简单,却预示了后来视频游戏和交互式计算的诞生。2012年,剑桥大学计算机实验室启动了一个项目:基于原始图纸和回忆,重建一台可运行的EDSAC。这个“EDSAC Replica”项目在2019年成功完成,让这台传奇机器再次轰鸣。今天,在剑桥的计算机历史博物馆中,参观者可以亲眼看到水银延迟线的闪烁,听到真空管的嗡鸣,感受到那个时代工程师们的激情与智慧。
回望1949年,当威尔克斯按下启动按钮的那一刻,他或许没有意识到,他不仅建造了一台计算机,更创造了一个新世界。在这个世界里,程序可以自由流动,软件可以无限迭代,而人类的思想,终于可以脱离物理的束缚,在数字的海洋中驰骋。EDSAC,这台水银与真空管组成的机器,是人类智慧的一座丰碑,它告诉我们:最伟大的创新,往往诞生于最黑暗的摸索之中。
对技术发展和工程实践的推动程度
对商业模式和市场格局的影响深度
在科技文化和社会层面的持久影响力
用户群体的广度和普及程度