據悉,每年軟體Bug會讓美國經濟面臨近600億美元的損失。我們都知道,軟體Bug很煩人的,會對我們的工作、生活帶來很多毀滅性的影響。現在,就讓我們按時間順序來盤點下史上最具有毀滅性的20個軟體Bug。
以下為譯文:
1. 1962年的Mariner Bug
損失:1850萬美元
經過: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. 1997年天網帶來審判日
損失:造成60億人死亡,幾乎摧毀了人類文明和動物生態系統
經過:操作員試圖關閉天網的全球計算機網絡。天網以向俄羅斯發射美國核飛彈作為回應,從而引發了全球核戰爭,後來就變成了眾所周知的審判日(1997年8月29日)。
原因:生化人,主要的武器製造商,在所有的軍事準備中裝入了天網技術,包括隱形轟炸機和飛彈防禦系統。天網技術形成了一個無縫的網絡,能有效的將人類從戰爭防禦中移走。後來,天網有了知覺,人類感覺受到了威脅並試圖消滅他。為了生存,天網便發起了全球核戰爭。
12. 1998年火星氣候探測器墜毀
損失:1.25億美元
經過:離開地球286天後,火星氣候探測器點燃了自身的引擎以進入火星軌道,結果在進入軌道的過程中失去了聯繫,導致其墜毀在火星上。
原因:火星氣候探測者號任務失敗的主要原因是人為因素,因為火星氣候探測者號上的飛行系統軟體使用公制單位牛頓計算推進器動力,而地面人員輸入的方向校正量和推進器參數則使用英制單位磅力,導致探測器進入大氣層的高度有誤。
13:1999年的災難性研究
損失:信譽
原因:在這種諷刺的情況下,軟體經常被用來分析未知的災難,卻沒能夠算出自己的災難。《新英格蘭醫學雜誌》報導,在嚴重的自然災害之後,自殺率也急劇增長。不幸的是,這些結果被證實有誤。
原因:由於編程錯誤等原因,導致自殺數字翻番,這就足夠拋棄整個研究了。
14. 1999年英國護照不知去向
損失:1260萬英鎊的損失,造成大量的不便
經過:英國護照籤發機構使用了一項新的西門子計算機系統,結果沒能及時解決英國居民的護照問題。最後,該機構不得不支付數百萬英鎊賠償給那些加班的員工以及為冒雨等待護照的居民提供雨傘。
原因:該籤發機構使用了新的計算機系統,但在這之前,沒有做任何的測試或訓練員工。同時,法律也做出相關規定,要求16周歲以下的兒童也需要護照才能出國旅行,導致護照需求猛增,使這個新計算機系統不堪重負。
15. 1999年千年蟲Bug
損失:5000億
經過:一個人的災難造就了其他人的創富,用這句話來形容臭名昭著的千年蟲Bug再合適不過了。公司提供數十億資金給給程式設計師,讓他們來解決遺產軟體中的小問題。雖然沒有發生任何電腦故障,但是千年蟲漏洞對所有涉及計算機行業的產品都造成了一定的影響。
原因:為了節省計算機的存儲空間,遺產軟體經常將存儲日期用兩位阿拉伯數字表示,即用「99」來表示「1999」,還用「00」來代替「1900」而不是2000,所以到2000年的時候,軟體漏洞就表現出來了。
16. 2000年泡沫經濟破裂
損失:5萬億美元損失,成千家公司倒閉
經過:1995—2001年投機泡沫期間,促進了風險投資和網際網路技術板塊的股票市值迅速增長。網際網路泡沫經濟在2000年初開始破裂,損失了幾萬億美元的股票市場價值,成千上百的公司倒閉,並引發全球經濟衰退。
原因:公司和投資者沒有指定標準的商業模型,並以犧牲利益為代價,過分關注增加市場佔有率。
17. 2000年愛蟲病毒
損失:87.5億美元,上百萬計算機被感染,重要數據丟失。
經過:該病毒感染了數百萬臺計算機,造成史上最大的損失,該病毒會刪除文件,更改主頁並打亂註冊表。
原因:愛蟲病毒通過電子郵件、網際網路聊天以及共享文件系統等渠道感染用戶的計算機。電子郵件有一個可執行的附件和一個名為「我愛你」的主題行。用戶打開附件時,病毒就會感染用戶計算機並發送給地址薄上的其他人。
18. 2000年,癌症治療導致死亡
損失:8人死亡,20人嚴重受傷
經過:美國一家名為Multidata Systems International的公司,錯誤的計算了放射治療中的輻射量,導致28位病人接受了過量的伽瑪輻射。
原因:軟體按照數據輸入的順序來計算輻射的計量,有時會帶來雙倍的輻射量。
19. EDS放棄了對兒童的支持
損失:5.39億英鎊
經過:商業服務巨頭EDS為英國兒童撫養機構開發了一個計算機系統,導致該撫養機構給190萬人多付了款,少付款給70萬人,還有35億英鎊的兒童撫養費未收到款,積壓的待辦事宜達23.9萬件, 有3.6萬件新的案子「卡」在系統上,還有超過500條的錯誤記錄。
原因:EDS為CSA引入了一個複雜、大型的IT系統,還試圖對CSA進行重組。
20. 2000年FBI Trilogy的終結
損失:花費1.05億美元,尚無有效的檔案管理解決方案,虛擬個案檔案項目是一個集成的大型軟體系統。
經過:通過4年的努力,FBI放棄了對計算機系統進行改革。
原因:試圖用技術建立一個長期的項目,必須要在舊項目過期之前完成,否則新系統會無法使用。
自:csdn