首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >19个因Bug引发的巨大灾难

19个因Bug引发的巨大灾难

作者头像
TestOps
发布2022-04-04 10:22:29
发布2022-04-04 10:22:29
2.2K0
举报
文章被收录于专栏:TestOps云层TestOps云层

据悉,每年因软件问题会让美国经济损失近600亿美元。我们都知道,软件Bug是很烦人的,会给我们的工作、生活带来很多毁灭性的影响。现在,就让我们按时间顺序来盘点下史上最具毁灭性的19个软件Bug。

1. 1962年的Mariner Bug

损失:1850万美元

经过:航空软件bug直接导致Mariner 1号火箭在发射不久后就偏离了其预期运行轨道,任务控制中心在其发射293秒后就摧毁了火箭。

原因:一名程序员将公式错误地录入到计算机代码中,直接导致计算机错误地计算了火箭的运行轨道。

2. 1978年哈德福特市竞技场塌陷

损失:7000万美元,外加给当地经济带来近2000万美元的损失

经过:在几千名球迷离开哈德福特市的竞技场后,由于湿雪等原因造成钢架结构的竞技场屋顶倒塌。

原因:由于CAD软件程序员习惯性地认为钢架结构屋顶的支撑仅承受纯压力,所以当其中的某个支撑点因大雪垮塌后,引起了连锁反应,导致屋顶的其他部分相继倒塌。

3. 1982年苏联的石油管道事件

损失:给苏联经济造成了重大的损失

经过:控制软件出了故障,导致西伯利亚输气管道产生巨大压力,成为历史上最大的人为非原子核破坏事件。

经过:根据CIA(美国中央情报局)陈述,为其工作的间谍在苏联购买了用于控制跨西伯利亚管道的加拿大计算机系统并在其中植入了一个Bug。据说CIA发现了这个存在Bug的程序,决定通过让设备错误运行以此破坏苏联人的设备。

4. 1983年差点发生的第三次世界大战

损失:差一点影响到了全世界的人

经过:早期,苏联政府的报警系统错误的报出美国发射了五枚弹道导弹,幸运的是苏联值勤员推断如果真的是美国政府袭击他们的话,发射的导弹肯定不止5枚,所以他推断这是一场虚惊。

原因:苏联软件的一个Bug,因阳光反射云顶,给出了错误的报警信息。

5. 1985年Therac-25医疗加速器事件

损失:死亡3人,严重受伤3人

经过:加拿大的Therac-25放射机发生故障,导致病人受到大量的辐射。

原因:Therac-25是建立在一款没有经过正规培训的程序员开发的操作系统上,由于这款不易被察觉的“Race Condition”的Bug,一名技术员可能在病人没有进行任何防护的情况下,意外地将Therac-25配置为高能模式。

6.1987年华尔街股市崩盘

损失:1天就损失5000亿美元

经过:在“黑色星期一”(1987年10月19日)当天,道琼斯指数一天之内重挫508.32点,跌幅达22.6%,创下历史上单日最大的百分比跌幅,引发金融市场恐慌。

原因:很多人认为这场股灾是因程式交易引起的,程式交易生成大量的销售订单,造成系统崩溃,导致大多数的投资者盲目的跟从。股灾后很多人说电脑程式看到股价下挫,便按早就在程式中设定的机制加入抛售股票,形成恶性循环,令股价加速下挫。

7. 1990年AT&T电话断网

损失:造成7500万的电话通话中断,20万张机票没法按时预定

经过:在一次复杂的、用于加速呼叫的软件升级里面的一小行错误代码引起了连锁反应,使整个网络都瘫痪了。

原因:软件升级中出行了一个有Bug的代码,导致114台交换机每六秒当机重启一次,所有长途电话服务暂停9个小时。

8. 1991年海湾战争

损失:28名士兵死亡,100人受伤

经过:第一次海湾战争期间,在沙特阿拉伯的美国爱国者导弹系统没能拦截住飞入伊拉克境内的飞毛腿导弹,导致该导弹毁掉了美国的一个军营。

原因:由于当时软件的舍入错误,造成爱国者系统没能及时发现飞毛腿导弹,造成破坏。

9. 1993年--Intel奔腾浮点指数除法事件

损失:造成4.75亿美元的损失

经过:一个硅片上的错误导致Intel高性能奔腾芯片在一段范围内计算浮点指数除法时发生错误。例如4195835.0/3145727.0产生的是1.33374而不是1.33382,产生了0.006偏差。

原因: 奔腾浮点单元的除法器有一个有缺陷的除法表,丢失了1000项记录中的5项,导致取整错误。

10. 1996年Ariane火箭爆炸

损失:5亿美元

经过:Ariane 5是欧洲最新的无人驾驶火箭,在处女航开启数秒后被人为摧毁,同时被摧毁的还包括4颗卫星。

原因:Ariane 4火箭的工作代码在Ariane 5中被重新使用,但是Ariane 5更高速的运算引擎在火箭航天计算机中的算法程序中触发了Bug。最终导致了航天计算机的崩溃。

11. 1998年火星气候探测器坠毁

损失:1.25亿美元

经过:离开地球286天后,火星气候探测器点燃了自身的引擎以进入火星轨道,结果在进入轨道的过程中失去了联系,导致其坠毁在火星上。

原因:火星气候探测者号任务失败的主要原因是人为因素,因为火星气候探测者号上的飞行系统软件使用公制单位牛顿计算推进器动力,而地面人员输入的方向校正量和推进器参数则使用英制单位磅力,导致探测器进入大气层的高度有误。

12:1999年的灾难性研究

损失:信誉

原因:这个事件很有讽刺意味:软件经常被用来分析未知的灾难,却没能够算出自己的灾难。《新英格兰医学杂志》报道说在严重的自然灾害之后,自杀率也会急剧增长,言之凿凿。但是,这些结果被证实有误。

原因:由于编程错误等原因导致最后的自杀数字结果翻番——足够推翻整个研究了。

13. 1999年英国护照难产

损失:损失1260万英镑,造成大量不便

经过:英国护照签发机构使用了一套西门子的新计算机系统,结果并没能及时解决英国居民的护照问题。最后,该机构不得不支付数百万英镑赔偿给那些加班的员工,还得为冒雨等待护照的居民提供雨伞。

原因:当时的法律刚出台一项规定,要求16周岁以下的儿童需要护照才能出国旅行,导致护照需求猛增。机构使用了新的计算机系统,但在使用之前,没有做任何的测试也没有培训员工如何使用,而且过多的需求也使新计算机系统不堪重负。

14. 1999年千年虫Bug

损失:5000亿

经过:一个人的灾难造就了其他人的创富,用这句话来形容臭名昭著的千年虫Bug再合适不过了。公司提供数十亿资金给给程序员,让他们来解决遗产软件中的小问题。虽然没有发生任何电脑故障,但是千年虫漏洞对所有涉及计算机行业的产品都造成了一定的影响。

原因:为了节省计算机的存储空间,遗产软件经常将存储日期用两位阿拉伯数字表示,即用“99”来表示“1999”,还用“00”来代替“1900”而不是2000,所以到2000年的时候,软件漏洞就表现出来了。

15. 2000年泡沫经济破裂

损失:5万亿美元损失,成千家公司倒闭

经过:1995—2001年投机泡沫期间,促进了风险投资和互联网技术板块的股票市值迅速增长。互联网泡沫经济在2000年初开始破裂,损失了几万亿美元的股票市场价值,成千上百的公司倒闭,并引发全球经济衰退。

原因:公司和投资者没有指定标准的商业模型,并以牺牲利益为代价,过分关注增加市场占有率。

16. 2000年爱虫病毒

损失:87.5亿美元,上百万计算机被感染,重要数据丢失。

经过:该病毒感染了数百万台计算机,造成史上最大的损失;该病毒会删除文件,更改主页并打乱注册表。

原因:爱虫病毒通过电子邮件、互联网聊天以及共享文件系统等渠道感染用户的计算机。电子邮件有一个可执行的附件和一个名为“我爱你”的主题行。用户打开附件时,病毒就会感染用户计算机并发送给地址薄上的其他人。

17. 2000年,癌症治疗中出现意外死亡

损失:8人死亡,20人严重受伤

经过:美国一家名为Multidata Systems International的公司,错误的计算了放射治疗中的辐射量,导致28位病人接受了过量的伽玛辐射。

原因:软件按照数据输入的顺序来计算辐射的计量,有时会带来双倍的辐射量。

18. EDS放弃了对儿童的援助支持

损失:5.39亿英镑

经过:商业服务巨头EDS公司为英国儿童抚养机构(简称CSA)开发了一个计算机系统,导致该抚养机构给190万人多付了款,少付款给70万人,还有35亿英镑的儿童抚养费未收到款,积压的待办事宜达23.9万件, 有3.6万件新的案子“卡”在系统上,还有超过500条的错误记录。

原因:EDS为CSA引入了一个复杂、大型的IT系统,还试图对CSA进行重组。

19. 2000年FBI Trilogy的终结

损失:花费1.05亿美元,尚无有效的档案管理解决方案,虚拟个案档案项目是一个集成的大型软件系统。

经过:通过4年的努力,FBI放弃了对计算机系统进行改革。

原因:试图用技术建立一个长期的项目,必须要在旧项目过期之前完成,否则新系统会无法使用。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-12-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TestOps 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 据悉,每年因软件问题会让美国经济损失近600亿美元。我们都知道,软件Bug是很烦人的,会给我们的工作、生活带来很多毁灭性的影响。现在,就让我们按时间顺序来盘点下史上最具毁灭性的19个软件Bug。
  • 1. 1962年的Mariner Bug
  • 2. 1978年哈德福特市竞技场塌陷
  • 3. 1982年苏联的石油管道事件
  • 4. 1983年差点发生的第三次世界大战
  • 5. 1985年Therac-25医疗加速器事件
  • 6.1987年华尔街股市崩盘
  • 7. 1990年AT&T电话断网
  • 8. 1991年海湾战争
  • 9. 1993年--Intel奔腾浮点指数除法事件
  • 10. 1996年Ariane火箭爆炸
  • 11. 1998年火星气候探测器坠毁
  • 12:1999年的灾难性研究
  • 13. 1999年英国护照难产
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档