敬畏传奇——直面第一台可编程电子计算机:Colossus

转载 2016年08月30日 10:05:06

作为程序员或任一种IT从业者,致敬第一台可编程电子计算机 Colossus!它的诞生有趣且颇多曲折——二战期间被发明后先是用于机密事务,历经Enigma代码、密码机、转子系统等时期。这凝聚了多人心血的宏大工程令人敬畏。

敬畏传奇——直面第一台可编程电子计算机:Colossus


发明故事被反反复复地传诵,年轻一代对此深信不疑。然而人们对这些故事的态度仿佛它们是有着发明家名字的某个故事——在这些事件之前,发明并不存在,之后仿佛魔法一般,发明就出现了。你一定听过落在牛顿头上的苹果、阿基米德浴缸里的水溢出之类的故事。有时,发明家的名字会由于国家不同而有所变化,这也引起人们对发明故事区别的思考。事实上,很多情况下,一个发明的产生存在不止一处激动人心的时刻;相反,如今为人所知的伟大发明家的发明是构筑在前人的努力之上,他们只是一群幸运的工程师和科学家,点子在其他人之前演变成了奇迹般的突破。

计算机的演变史也无例外,许多人的努力才成就了如今不可或缺的电子设备,例如17世纪法国Blaise Pascal发明的机械计算器、英国Charles Babbage 和伯爵夫人Ada Lovelace 19世纪的研究、美国Herman Hollerith于19世纪末发明的穿孔制表机、德国Konrad Zuse的研究等。

因此在计算机领域里查找一名发明家时,我们要更加具体提出问题,而不仅仅是类似“谁发明了第一台计算机?”这样的问题,因为实在有太多的答案人选。如果我们进一步约束问题范围,例如“谁发明了第一台可编程电子计算机?”,这样答案会简单的多,因为问题透露了关于计算机足够多的信息。答案往往是“第一台可编程电子计算机是Colossus,在英国布莱切利园由Alan Turing在二战期间发明,用于解读纳粹恩尼格玛(Enigma)代码,而这直到20世纪70年代才公布于众”。

这是一段看似几乎完美的简短引述,然而包含着许多无用的谬误。Colossus的确是你找寻的答案,在二战期间发明,随后多年作为机密事项,但剩下的部分则毫无根据。Colossus并不是在英国布莱切利园发明,其目的也不是解读恩尼格玛代码,而Alan Turing的直接参与更是微乎其微。真实故事要比这有趣得多。


英国布莱切利园,奇迹之处

敬畏传奇——直面第一台可编程电子计算机:Colossus

Heinz Guderian将军在对法战争中查看恩尼格玛机器的操作。Bundesarchiv, Bild 101I-769-0229-11A / Borchert, Erich (Eric) / CC-BY-SA 3.0, via Wikimedia Commons

首先我们来看布莱切利园的部分,现在有现代布莱切利园和国家计算机博物馆(The National Museum Of Computing)。博物馆有着众多藏品,而这其中两处画廊与我们今日主题相关。首先是Tunny展馆,其展示了促使Colossus发明的一系列时间和相关背景;再者是Colossus展馆,其收藏了全面功能性的二代Colossus计算机复制品。

最为著名的纳粹编码系统是恩尼格玛,便携式机器组装上打字机后就成为努力解码的标志。这是一种德国军事作战单位使用的代码,不同通讯线路有细微不同的组成方式。并且根据照片显示,这些编码机器往往在前沿征地或移动信号单位操作。

当然,恩尼格玛不是唯一德军使用的编码系统,也不是唯一被协约国截获的代码,更不是唯一布莱切利园人员需要破解的代码。

Tunny展馆的第一部分向人们阐述了洛仑兹密码机(也称Tunny)是如何保障德军最高指挥部之间的交流,并实时对电传打字机交流进行编码。表面上,洛仑兹密码机和恩尼格玛编码系统很相像因为其采用了转子系统(rotor system);而在恩尼格玛系统的线路交流方面,其转子通过使用和二进制电传交流相异或(XOR)的伪随机二进序列来生成加密输出。同样,与恩尼格玛不同的是,洛仑兹密码机的破译者没有现成的机器研究,所以他们只能通过研究其密码编译的截获信息来解读信息。

 

缩短战争的“鱼”(即Tunny,原意金枪鱼)

敬畏传奇——直面第一台可编程电子计算机:Colossus

博物馆的洛仑兹密码机

在博物馆,游客可以参观监听电台。在这儿,他们可以观察到在截获的电文被送到布莱切利园的加密分析专家处研究之前,电文是如何记录在纸带(早期计算机使用的一种五孔纸条),手写的;感受电台人员收集电文付出的努力。运气所致,人们迎来了突破。1941年8月,雅典的一位操作员失误用其洛仑兹密码机、相同密码设置,发送了一条4000字的信息两遍,为布莱切利园的破译人员降低了解码难度。随后数学家Bill Tutte被委任任务,利用这两封密文和译码方式推演密码机运转方式,而这项任务直到近1942才完成。在雅典通讯线路有所突破后,这项任务被授予代号“Tunny”。这些任务代号都以鱼的种类命名。

在Tunny画廊的中心是重建的Tunny机器,由伦敦多利士山的邮政研究局(Post Office Research Station)重制的洛仑兹密码机复制品。人们可以通过一块和洛仑兹密码机转子装置类似的插板设置机器、解码,但仍需要转子装置确保可使用。1943年中期的一台叫做“Heath Robinson”的机器导致了自动推动了人们对于转子设置的发现。Heath Robinson是一名英国漫画家,表达用复杂机械完成简单任务的设计)。如果你没听说过他,但你了解Rube Goldberg,那么恭喜,你和我们思路一致。


重建的 Heath Robinson 机器

敬畏传奇——直面第一台可编程电子计算机:Colossus

博物馆在其洛仑兹密码机复制品边上重建了一台Heath Robinson机器,与原版相同,在滑轮装置产生的张力下,机器装有一对长条的打孔纸带环。其一记有密文,而另一个有一组转子可能的设定序列,并且一组取自Tunny机器的逻辑能和转子设置中的每一个轮流验证密文。由此而得的输出结果将会用来生成轮子设置组,大幅降低密文分析专家的破译难度。

一旦游客观摩了两台机器的运转过程,导游会展示由于Heath Robinson机械原理,损坏的部分纸带,侧面说明了机器运转缓慢且不可信。尤其是两纸带的紧密同步,这对机器运转十分重要,但同时这也是机器往往失败的地方。导游随后会讲解Alan Turing是如何推荐他在恩尼格玛项目中合作过的工程师参与Heath Robinson团队,而这也是Turing对Colossus的唯一直接贡献。

Tommy Flowers是多力士山交换小组的领头人,而这也是他的想法:如何使Heath Robinson关于Tunny转子装置的纸带序列能通过闸流管在电子层面上生成,这促使了机器Colossus的产生。密文仍能从打孔纸带上读得,但密文还能输入至Colossus机器的电子可编程功能区。虽然它并不是我们现在熟知的存贮程序计算机,但它符合可编程电子计算机的描述。


 直面伟大之作

敬畏传奇——直面第一台可编程电子计算机:Colossus

二代Colossus机器的前部

和周末第一批访客一样,我们走进了博物馆的Colossus展廊,十分幸运地看到它正在重获新生。位于房间中心的这台机器是2007年完成的二代Colossus的复制品,唯一的障碍是摆放的安全隔离栏,旨在使大众远离高电压。此外,我们可以看到有两根平行、几近天花板高度的长支架,除非它们在一间没有天花板的战时小屋;两根支架上都镶满了成千上万的真空管。在远处末端有类似于Heath Robinson机器的纸条读卡器,接近中间的是编程机器的插板和开关,离你最近的末端是记录结果的电子打印机。

机器缓慢供电以避免过热风险,并延长试管的使用寿命。我们的导游告诉我们机器一年仅需更换个位数试管,而考虑到其拥有的试管数,这是令人惊奇的。一旦机器开始运转,你会发现原本在房间内感受到的早晨的微冷迅速被试管灯丝所产生的巨大热量所替代;尽管机器可能比你预想的还要安静,纸带读取器仍在周而复始地呼呼作响。

与种子机器共处一室对于工程师来说是一次有趣的经历,即使这是复制品。一些其他游客似乎是因为机器与世界大战的联系而非其科技重大意义来这儿,但看到我们不是唯一那些同这一两块焊接金属打交道的人,感觉真有趣。这一刻体会到我们这七十年走了有多远,无论是赞扬那些建造了Colossus的人——尽管Colossus的存在是国家机密——还是赞扬他们工作的深远影响。机器的运转规模和复杂程度巨大,是令人惊叹的宏伟工程。


敬畏传奇——直面第一台可编程电子计算机:Colossus

布莱切利园的真正洛仑兹密码机,从挪威武装部队博物馆暂借。破译人员直到大战末期才看见密码机,这也是为什么我们将这张图片摆在文末。

英国国家计算博物馆(The National Museum Of Computing)拥有一系列令人惊奇的老式、具有历史意义的计算机,远不止本文提到的战时计算机。如果你在布莱切利附近,这里绝对值得一去。博物馆由一家慈善受托基金机构管理,以合理价格的门票收入和捐助维持经营。还不快将英国国家计算博物馆提上旅游日程!



来源:漏洞银行
链接:http://www.bugbank.cn/news/detail/57c4270a7515bcff109b786b.html
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章推荐

数字电子技术复习(六)——存储器与可编程逻辑器件

关于存储器和可编程器件

电子计算机的诞生与发展

本文讲计算机的诞生过程,我尽量把内容故事化使之不那么枯燥。 20世纪30年代中期,美国的艾奥瓦州立大学有一位数学系和物理系教授叫约翰·文森特·阿塔纳索夫(John Vincent Atana...
  • IChuans
  • IChuans
  • 2012年01月11日 22:56
  • 2360

电子计算机(俗称电脑)和人之间的相同点

我们先将CPU比作一个人(A),那么人脑的计算相当于CPU计算。将人脑的记忆分为快速记忆和永久记忆,那么,快速记忆相当于CPU的缓存,永久记忆相当于内存。(内存和缓存的比喻不知道恰当不。)人的眼睛、口...

冯•诺伊曼-电子计算机之父

电灯的发明者,19-20世纪伟大的发明家爱迪生说过一句话:“天才是99%的汗水加1%的灵感。”但不得不说的是,那1%的灵感跟99%汗水一样重要,就算是天才,有时候也需要那1%的灵感。   约翰•冯•诺...

电子计算机工程毕业设计题选

  • 2014年03月06日 03:27
  • 142KB
  • 下载

《计算机中可编程内存分析》

博主最近刚看了一些斯坦福大学的内存分析课,结合以前做的内存分析,今天将计算机中可编程的内存做一个分析。 在计算机的可编程内存中,我们一般分为三个区域:静态存储区,栈区,堆区。内存模型如下所示: ...

电子计算机组成原理(蒋本珊).pdf

  • 2011年08月21日 23:39
  • 18.9MB
  • 下载

电子计算机算法手册Algol-60

  • 2013年03月02日 20:46
  • 10.32MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:敬畏传奇——直面第一台可编程电子计算机:Colossus
举报原因:
原因补充:

(最多只允许输入30个字)