航空軟件其實并不神秘,從計算機架構上來說,同普通的計算機系統(tǒng)并無太大區(qū)別,都是由處理器、總線、I/O設備、存儲設備、網絡設備、通訊設備、操作系統(tǒng)和應用軟件所構成的。僅僅是為了滿足很高指標的可靠性、健壯性和實時性,而采用了另一套東西而已。
1、波音-787、AH-64用的操作系統(tǒng)是VxWorks
VxWorks官網:
http://www.windriver.com/products/vxworks/
2、B-2、F-16、F-22、F-35、空客-380使用的操作系統(tǒng)均是Integrity-178B
Integrity-178B官網:
https://www.ghs.com/products/safety_critical/integrity-do-178b.html
類似波音-787、空客-380、空客-350內部設備之間是使用以太網的一種變體來互聯的,叫AFDX,在應用軟件這一層,同普通的以太網程序沒有任何區(qū)別。
3、過去這些設備經常使用ADA語言來編寫,現在為了降低成本,在F-35項目上已經改為使用C++了
F-35項目的C++編程規(guī)范:
http://www.stroustrup.com/JSF-AV-rules.pdf
F-35的微處理器是PowerPC指令集的,為了保證可靠性,采用的編譯器也是同普通的編譯器不太一樣。編譯器也是有可能出現bug的,為了保障源代碼同編譯出來的目標代碼完全一致,另外,微信搜索公眾號:前端技術編程,回復:前端 領取資料 。避免編譯器的bug造成問題,在JSF項目內部的軟件開發(fā)中,經常使用CompCert編譯器。這個編譯器只能編譯C99,但是可靠性極高。
要知道,近幾年全球范圍內飛機失事發(fā)生的次數不少。據不完全統(tǒng)計,每年全球大約有4000萬次的飛機起落,而我國的飛機失事率一直處于非常低的水平。此前中國已經連續(xù)12年沒有發(fā)生過重大民航事故了,而上一次墜機事故還是發(fā)生在2010年8月24日,河南航空的伊春空難,當時墜毀的機型為ERJ-190。
截至目前,東航墜機已經過去24小時了。總體來說,無論大家討論什么因素導致的,都不具有肯定性的說法,包括為什么急速驟降,最后垂直墜落,飛機本身有沒有問題,是不是操作系統(tǒng)出了故障,有沒有遭遇極端天氣影響等等,這一切都是屬于未知數。
任何空難發(fā)生都是悲劇的,事故真實原因還需要等待官方調查結論、依靠黑匣子等來解開謎團。
參考來源:
1. VxWorks官方網站
http://www.windriver.com/products/vxworks/
2. Integrity-178B的官方網站
https://www.ghs.com/products/safety_critical/integrity-do-178b.html
3. 《F-35項目的C++編程規(guī)范》PDF
http://www.stroustrup.com/JSF-AV-rules.pdf
素材源于: 科技曼
版權歸原作者所有。僅供技術的傳播和學習討論,如涉及作品版權問題,請聯系我進行刪除。