飛機上用的是什麼作業系統?
- 2020 年 3 月 6 日
- 筆記

來源:CU技術社區
飛機上用的是什麼作業系統?
根據 V友轉自百度知道的答案:
航空軟體並不神秘,從電腦架構上來說,同普通的電腦系統並無太大區別,都是由處理器,匯流排,I/O設備,存儲設備,網路設備,通訊設備,作業系統和應用軟體所構成的。僅僅是為了滿足很高指標的可靠性,健壯性和實時性,而採用了另一套東西而已。
1、波音-787,AH-64用的作業系統是VxWorks

圖:www.windriver.com/products/vxworks/
這是VxWorks的官方網站
2、B-2, F-16, F-22, F-35, 空客-380 使用的作業系統是Integrity-178B

圖:www.ghs.com/products/safety_critical/integrity-do-178b.html
這是Integrity-178B的官方網站
類似波音-787,空客-380,空客-350內部設備之間是使用乙太網的一種變體來互聯的,叫AFDX,在應用軟體這一層,同普通的乙太網程式沒有任何區別。
3、過去這些設備經常使用ADA語言來編寫,現在為了降低成本,在F-35項目上已經改為使用C++了。

圖:www.stroustrup.com/JSF-AV-rules.pdf
這是F-35項目的C++編程規範
F-35的微處理器是PowerPC指令集的,為了保證可靠性,採用的編譯器也是同普通的編譯器不太一樣。
編譯器也是有可能出bug的,為了保障源程式碼同編譯出來的目標程式碼完全一致,避免編譯器的bug造成問題,在JSF項目內部的軟體開發中,經常使用CompCert編譯器。這個編譯器只能編譯C99,但是可靠性極高。
參考來源:
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++編程規範》PDF
http://www.stroustrup.com/JSF-AV-rules.pdf