當前位置:
首頁 > 最新 > 史上最嚴重的計算機bug:火星氣候探測器快速意外的解體

史上最嚴重的計算機bug:火星氣候探測器快速意外的解體

關鍵時刻,第一時間送達!

作者丨 Jamie Lynch

譯者丨無阻我飛揚

摘要:文章講述了史上最嚴重的計算機bug: 火星氣候探測器快速意外的解體,從宇宙輻射、軟體、人為失誤等方面詳細分析了bug產生的原因,文章最後給出了減少或避免bug產生的建議,以下是譯文:

史上最嚴重的計算機bug是為了紀念七十年前第一個計算機bug的發現的一個迷你系列。儘管這些故事比工程師在他們職業生涯中將遇到的軟體bug更為極端,但它們值得深入研究,以便為軟體開發和部署提供一些借鑒。這些計算機bug給那些經歷過它們的人們留下了重大的影響,我們希望它們能給我們自己的工作和項目提供寶貴的經驗。在這個系列中會讀到其它計算機bug: Ariane(阿里亞娜歐洲空間組織運載火箭) 5災難。

火星氣候探測器

1999年9月23日,星期四,太平洋時間上午1點41分,為了避免受火星上層大氣層暫時下降的影響,火星氣候探測器自行裝載著太陽能電池組。9分鐘後,飛船重新定位自身使用的反應控制系統,使主機逆行到火星。上午2點01分,發動機靠主燃料點火,開始了在火星大氣層上一個40天的複雜的減速動作,節約寶貴的火箭材料。上午2點06分,探測器穿過火星,來自地球的無線電通訊受阻,那是一個扣人心弦的二十一分鐘。這顆衛星一旦成功進入軌道,幾年內就會把照片傳送到地球。

但不幸的是,這並沒有發生,因為飛船不在正確的軌道上。它提前了24小時在火星大氣層中燃燒了,消失得無影無蹤。這就是火星氣候探測器快速意外解體的故事。

任務

這個花費2.35億美元的飛船原本打算成為火星的第一顆氣象衛星,它將用高解析度的照相機監控火星的大氣層。在687天的過程中,或者說一火星年的時間裡,探測器應該監測火星的溫度,並將沙塵暴的照片傳送回地球上的地面控制系統。

這顆衛星還應該為命運多舛的火星極地著陸器任務起到通訊中繼的作用。火星極地著陸器同樣在最後階段遇到了一次快速意外的解體。這可能是由於軟體和機械bug,著陸支架過早的關閉了主機。但那是一個完全不同的故事。

到底出了什麼問題

宇宙輻射

和許多軟體bug一樣,這個錯誤的根源是一系列的事件,這些事件會讓任何工程師在午夜的冷汗中醒來。首先,在九個月的旅程中,飛船已計劃安排執行推進機動,以防止飛行器的反應控制輪獲得太多的角動量。

由於飛船上的太陽能電池板的非對稱布置,這些AMD機動比預測的多產生了10倍還多。這是由於太陽反射器影響,太陽的光子在飛船上施加力並使它旋轉。雖然這些力量比較小,但在超過1億9600萬公里的行程中,它們的疊加影響,使得飛船遠離了預定軌道約170km 。

地面控制軟體

第二個因素是由洛克希德馬丁公司提供的地面控制軟體中的一個bug,它顯示了每一個AMD機動的力量。該軟體以英制單位計算磅秒值,而美國宇航局開發的軟體預期的值是牛頓秒這一公制單位。由於這些值沒有正確轉換,這導致航天器位置的微小差異,在幾百萬英里的航行中,就會疊加影響,差生較大的位置偏差。

人為錯誤

第三個也是最後一個因素是人為錯誤。質量保證人員在外部軟體中沒有發現英制單位的使用,儘管NASA當時的編碼標準要求使用公制單位。

事實上,在航行的頭四個月里,美國宇航局依據承包商的電子郵件通知,判定飛船在旋轉。由於文件格式錯誤以及多方面的bug,計算也手動進行,而不是使用所提供的軟體。

善後

在美國航空航天局的調查報告中,團隊之間的溝通和操作人員的培訓被引述為一個促進因素。錯過了執行應急軌道修正的機會,儘管工作人員後來回憶起他們都同意執行機動。導航人員還同時控制了三個不同的任務,這可能會削弱他們對軌道差異的注意力。

美國宇航局的其他建議包括更好地培訓導航人員,將任務的不同方面授權給具體的工作人員,例如將決定何時執行機動的責任交給具體負責此項工作的工作人員。另外一個非常重要的建議是審計所有使用英制單位的軟體。

史上最嚴重的計算機Bug系列故事是為了紀念2017年Bug日。七十年前,葛麗絲·霍普發現了第一個計算機bug—她正在研究的哈佛馬克2號的繼電器之間卡住了一隻飛蛾。以前在其它領域描述過bug的概念,但是飛蛾發現是計算機領域中第一次使用「調試」一詞的術語。

Bugsnag自動監測應用程序中的有害的錯誤並提醒你,使你在軟體的穩定性上有了可見性。你可以認為我們是軟體質量保證的保障者。

來源:

https://en.wikipedia.org/wiki/Mars_Climate_Orbiter#Cause_of_failure

http://www.cnn.com/TECH/space/9909/30/mars.metric.02/index.html

https://www2.jpl.nasa.gov/files/misc/mcoarrivehq.pdf

ftp://ftp.hq.nasa.gov/pub/pao/reports/1999/MCO_report.pdf


點擊展開全文

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 CSDN 的精彩文章:

如何優化Web伺服器以實現高吞吐量和低延遲
寫給非專業人士的伺服器技術指南
Postgres中更好的資料庫遷移
來自 Underminer 工作室的虛擬現實優化建議
Nightdive 通過虛擬途徑為老遊戲營造光明的未來

TAG:CSDN |