历史上的七大软件Bug
社区读者大部分是计算机软件工程师或程序员,我不必详细说明这种称为软件Bug的起源,这不过是我们的常规生活。
但是你知道吗?这些软件错误和Bug的成本不仅仅是时间,有的影响到数十亿美元!是不是很可怕?
软件错误会导致停机、交易出错、丢失数据,特别是企业声誉受到损害。
当企业或组织在其产品中出现软件错误时,有可能会失去客户与珍贵的市场信誉,特别是某些服务违反了自己的用户服务协议。总体而言,它会导致巨大的财务损失,人们会失去信任并在未来避开这家公司,这是对任何组织都是极其不利的事情。
而且,这里的成本不仅意味着金钱,还意味着人们的隐私、有价值的数据泄露、安全等。
1.千年虫
二十几年,那场臭名昭著的千年虫事件,曾是全世界人们的一个巨大担忧,人们将无法应对 1999 年 12 月 31 日之后的日期,因为当时大多数计算机和操作系统均使用两位数来表示年份,在在 21 世纪的年份计数中处理 00 这个数字令人担心。
尽管千禧年的技术错误有些尴尬,它并且并没有真正引起很多生活中的问题,因为大多数系统都提前针对这个错误进行了调整。
而当时美国,花费了约1000亿美元来解决此问题。
2.管道爆炸
这个Bug发生在 1982 年。
苏联政府建造了一条运行在先进自动控制软件上的天然气管道,这条管理的运营言计划从一家专门从事此类开发的加拿大公司的软件进行复制。
为了抵制这种情况,美国中央情报局与加拿大人合作,并在将一个“特洛伊木马”放在了该软件中,以破坏苏联的天然气管道。
苏联显然不知道复制了受感染的软件,并将其与管道一起使用。1982 年,一场巨大的爆炸发生了。从美军方在太空中可以看到这种破坏力量,它损坏了大部分的管道,人们并花费了数千万美元来重建。
3. 比特币黑客,Mt. Gox
这是 2010 年世界上最大的比特币交易所的真实故事——Mt. Gox。
这个软件故障是如此巨大,以至于导致交易所无法创建交易,它永远无法完全赎回,损失的数字比特币损失高达 150 万美元。
后来,在 2014 年,Mt.Gox 在一次黑客事件中损失了超过 850,000 个比特币,近乎损失了 10 亿美元。
后来大约有 200,000 个比特币被追回,但经济损失仍然巨大。结果交易所宣布破产。
4. 一个连字符耗资 1.69 亿美元
1962 年,NASA 发起了一项无人太空数据收集任务,飞越金星。但它并没有按计划进行。
在火箭转向前,水手一号太空探测器无法离开卡纳维拉尔角。因此火箭可能正朝着地球的方向快速坠落,这将引发地球表面的巨大危险。NASA 工程师发出了自毁命令,最后这艘飞船在发射后 290 秒消失了。
事后调查显示这是由于一个非常简单的软件BUG造成的。一行代码中省略了一个连字符,这意味着向航天器发送了错误的制导信号,而当时的成本超过 1800 万美元,相当于如今的 1.69 亿美元。
5.莫里斯蠕虫
令人惊讶的是,有史以来最昂贵的软件错误之一是由一名学生造成的。康奈尔大学的一名学生在实验中创造了一种蠕虫病毒,像野火一样蔓延开来。由于编码错误,最终导致数万台计算机崩溃。
这些计算机都通过一个早期的局域网络连接起来,这使得莫里斯蠕虫成为第一个具有传染性计算机病毒。
后来,研究生罗伯特·塔潘·莫里斯(Robert Tappan Morris)最终被指控犯有刑事黑客罪,并被罚款 10,000 美元。但他制造的烂摊子估计价值 1000 万美元。
6. 奔腾 FDIV 漏洞
一位名叫 Thomas Nicely 的数学教授发现了奔腾处理器中的一个缺陷,并报告给了英特尔。后来英特尔向能够证明自己受到影响的人提供了一个替换芯片。
那是在 1994 年。Thomas Nicely 发现的错误并没有那么复杂。芯片算法中的查找寄存器的问题,这会导致计算中的微小误差,这不是一个很常见的情况。从数学上讲,计算错误的几率是 3600 亿分之一。但是当时这个错误细节在国际媒体上传播开来,数百万人要求使用英特尔提供的新芯片,英特尔为此花费了大约 4.75 亿美元。
7. NASA 的火星气候轨道器
1998 年,火星气候轨道器因离火星表面太近而燃烧,后来被 NASA 工程师发现。他们试图弄清楚出了什么问题,这将近花费了几个月的时间。最后,事实证明将英制单位转换为公制这个一个简单的Bug。
这次寻找失败错误的任务总成本超过 3.2 亿美元,这仅仅是因为公制单位的转换错误造成的。
你还了解哪些Bug?欢迎提出。
编译:场长
相关阅读: